Re: Controls & Key Equivalents

Eric Gorr <[email protected]> Fri, 3 Dec 2010 09:09:34 -0500
Newsgroups gmane.comp.macosx.devel
Message-ID <[email protected]>
On Dec 2, 2010, at 1:51 PM, Eric Gorr wrote:

> 
> On Dec 2, 2010, at 12:35 PM, Hamish Allan wrote:
>> You should probably file an enhancement request to Apple that they
>> should always show key equivalents in lieu of any other tooltip, which
>> would foster adoption of that approach.
> 
> I did play with placing it in a tooltip, but it just didn't feel or look right for it to be there. Perhaps that is what the wiser people then I at Apple may decide on eventually, but for now, I will likely go with another option. Your thoughts are appreciated.

My mind was working on this problem last night and I considered a couple of other options, which I sketched out here:

http://ericgorr.net/cocoadev/keyeq/01orig.jpg  -- not displaying key equivalents

http://ericgorr.net/cocoadev/02TotalFog.jpg
This one shows a key equivalent for one of the checkboxes. Basically, the window has a dense fog over it and the control a less dense fog, with the key equivalent centered, with an opaque, white background. One might imagine the fog fading in over a short period of time when the user presses the command key.

http://ericgorr.net/cocoadev/03ControlFog.jpg
Similar to the previous one, except that the fog just covers the control. One might imagine the fog fading in over a short period of time or sliding down from the top.


These are in addition to the five I had considered before:

1. Note the key equivalent in the documentation only

2. Place the information in a tooltip for the control

3. When the user holds down the command key, append the key equivalent to the label of the control. BBEdit, for example, does this on it's "save changes" sheet...the Don't Save button becomes Don't Save Cmd-D. Although, I did note that Text Edit does not offer the same feature, although, Cmd-D still maps to Don't Save. I'm curious, who you think has done the right thing here and why?

4. When the user holds down the command key, replace the label of the control with the key equivalent.

5. Since controls can be assigned attributed strings, always use a character in the label for the key equivalent and underline the character. Users will learn that means they can press Cmd-<char> for that control. This was the most preferred option when posed to http://ui.stackexchange.com - http://bit.ly/f5Wv3E



Just food for thought as I try to continue to work this out.