GNOME Bugzilla – Bug 144477
Keyboard Shortcuts interface fundamentally flawed
Last modified: 2008-07-25 16:44:11 UTC
The Keyboard Shortcuts program doesn't allow to define custom actions and the design itself is fundamentally flawed. I have found quite number of bugs asking to add new bindings. The problem is that the relational model is wrong. The key of the relationship (speaking in database terms) shouldn't be the action and the value shouldn't be the keyboard shortcut. The relationship should obviously be reversed, because you can only assign one action to a specific keyboard shorcut, while there might be multiple keyboard shorcuts resulting in the same action (see also bugs 108689 and 139998). How to do this practically? Only list the enabled keyboard shortcuts. When adding a new keyboard shortcut, users should start with typing the keyboard shortcut, and then be allowed to choose from a predefined list of actions (such as currently available and possibly sorted by category) or be able to define a custom action, e.g. specifying a command to run. By doing this, the list will also become less crowded. I image that adding a new keyboard shortcut should ideally be done in a pop-up window.
I would like to add a few comments to this suggestion. The current "keyboard shortcuts" option on the pull down menu is somewhat limited. For example, I can assign a key to initiate an e-mail program, but what e-mail program is activated? How can the default for e-mail, search, etc. be changed? Can a list of programs with icons be developed for the user to quickly/easily pick from? Also, the user could have the option of entering a command for executing a customized app/process. After searching the web, I found that "advanced" configurations for the keys can be done through apps>metacity in Configuration Editor. As a newbie, I wouldn't have known this without searching for it. Ideally, the Keyboard Shortcuts within the pull-down menu should either have more detailed settings or link to the metacity options with an "advanced" GUI button. [I would like the thank the gnome developers for getting my volume keys to map easily and work properly :)]
I agree that the ability to add a custom command sounds very cool. It is in fact something that the average user should prehaps not have access to. I would personally like it, though. Send a new bug as a request for an enhancement, so it doesn't get buried in this bug. I'm sure it would be discussed there. Perhaps a mockup would be good. As far as the default for e-mail being changed it is done through Preferred Applications (System->Preferences->Preferred Applications). The search is going to become interesting now that Beagle is via option for a search program.
The ability to add multiple keys to the same action/keymap sounds like a good idea. Does X11 support this? Though your way to deal with this issue does seem to be the correct way, I don't think it seems to be the obvious way from the user perspective. If my mother opened the keyboard shortcuts and didn't see the default options, she'd just go somewhere else. Also, the listing of actions after selecting a key doesn't sound good useful as you have to attempt to assign a key before you can know why you're selecting a key. Perhaps a better choice would be that a keyboard shortcut could have a "add another key" option. I'm not exactly sure how this would look from a UI standpoint as one would want to remove a single key without having to readd all the other keys associated. Perhaps a button next to an assigned shortcut to add another entry area. This would create another "E-Mail" directly below the already assigned e-mail or something like that.
Unless you intend on coming forward with a new code design, I don't see this as coming forward. Reopen if you have code to share.
Should we stop filing bug reports against major UI bugs? I am not pretending that it is easy to fix because I am not a developer. However, my feeling is that by closing such bug reports (which are essentially a form of documentation on the current shortcomings), GNOME is agreeing to be only a mediocre desktop environment. I think these bugs are valuable and shouldn't be marked "WONTFIX" just because the open bug count annoys one of the developers. If people who are not maintaining the software shouldn't file bugs against it, what's the point of having a community? I can tell you there are major UI bugs out there in GTK+ and GNOME that developers probably have never seen. Examples: bug 517969 and bug 484444 (which both describe race conditions). The reason they go under the radar for so long is that many developers probably have a relatively fast computer. Obviously, I had to laugh today when I read the following blog entry on Monologue: http://www.joeaudette.com/for-a-developer-a-fast-new-machine-is-bliss.aspx Sorry for the rant, but I don't see the point in me filing more bug reports anymore ... I don't care if a bug remains open for 4 years, or heck even 7 years like bug 56070. Closing your eyes for a bug doesn't make the problem go away.