[haiku-bugs] Re: [Haiku] #7967: Update menu modifier images to more accurately reflect the corresponding key that appears on the keyboard

  • From: "pulkomandy" <trac@xxxxxxxxxxxx>
  • Date: Wed, 09 Nov 2011 19:21:09 -0000

#7967: Update menu modifier images to more accurately reflect the corresponding
key that appears on the keyboard
------------------------------+----------------------------
   Reporter:  jscipione       |      Owner:  stippi
       Type:  enhancement     |     Status:  new
   Priority:  normal          |  Milestone:  R1
  Component:  User Interface  |    Version:  R1/Development
 Resolution:                  |   Keywords:
 Blocked By:                  |   Blocking:
Has a Patch:  0               |   Platform:  All
------------------------------+----------------------------

Comment (by pulkomandy):

 > >  1. not switch the shortcut bitmaps *ever*.
 >
 > If you are willing to live with the fact that on a PC keyboard the
 Windows key corresponds to a menu bitmap that says "OPT" and the Alt key
 corresponds to a menu that reads "CMD" and you are willing to live with
 the fact that when you switch the control and command keys via the "Switch
 shortcuts to Windows/Linux mode" button in Keymap the Control key
 corresponds to a bitmap that says "CMD" and the Alt key corresponds to a
 menu item that reads "CTRL" and are willing to live with the fact that on
 a Mac keyboard the Option key corresponds to a bitmap that says "CMD" and
 the Command key corresponds to a menu bitmap that reads "OPT" then ok.
 >
 > I find all that terribly confusing though and I think that the input
 server could take care of all of it for you without you having to do
 anything.

 That's what key roles are. The key labelled COMMAND in menus allows to
 send COMMANDS to the application ; the key labeled CONTROL allows tho send
 CONTROL characters in terminal, and the key labelled OPT doesn't do
 anything useful, because it is OPTional. Or you can maybe find a better
 meaning for this one.

 If the labels on your keybaord don't match, fix the keyboard ;)
 More seriously, this also has to do with muscle memory. This is why we
 have an optionn :
   * people already trained with other OSes will want to use CONTROL as the
 COMMAND key, as that's what other OS do and they are used to it
   * people with BeOS legacy or discovering Haiku will find it beter to use
 ALT as the COMMAND key, because it is easier to reach on the keyboard.

 Once you make a choice about that, you should be able to keep using it
 everywhere. On macs and on PCs. The labelling on the key doesn't matter.

 > How is that an ideal solution? That is equivalent to saying "this
 problem is hard, let's ignore it."

 Muscle memory is what matters in the long term. Do you actually look at
 the keys each time you trigger one of these menu shortcuts ? If so, I
 think it'd be faster to use the mouse.


 > It won't be an implementation detail if we support multiple keymaps
 because multiple keymaps break the control/command switching feature.
 However, if we implement this in input server instead, it would no longer
 have to. And while we are modifying input server to support this feature,
 we could use this to also change the menu bitmaps too.

 The input server doesn't know more about menus than the keymap preflet
 does.
 The ideas of key roles is that you don't want the labels in the menus to
 change depending on the keymap, keyboard, whatever. The key role is the
 meaning of the key, and has no relation with where it is on the keyboard.
 The mapping of the key is user choice and settable in the keymap preflet.
 Note that the default setting mostly makes sense, with CTRL being mapped
 to CONTROL. If you, user, choose to go for something else, assume the
 consequences.

 Also note how it matches what happen for any other key. If you swap P and
 O in the keymap preflet, they are now out of sync with the markings on
 your keyboard. You swapped the roles, but you didn't swap the keys
 themselves.

-- 
Ticket URL: <http://dev.haiku-os.org/ticket/7967#comment:23>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: