Re: Menu Behavior and Implementation

Hi Becky,
here are my thougts I discussed with Stefan Schnabel on the menu bar design proposal.

> 1) Setting focus
Yes, I also propose to set the focus. I would also propose to use the button's behavior of preserving the focus state as soon as the menuitem is left  (mouse focussing buttons).
 
 
> 2) Should the first item of the menu bar only be in the tab order or
> should there also be a keystroke sequence to move focus to the first item
> in the menu bar?

I propose to use a single tabstop on the menubar. All further navigation is compliant to standard use: arrowkeys, and enter key to trigger, escape to return to a previous state (incl. closing sub menus). Rich client menus also have a single point of entry (Alt for F10 or Contextmenukey or Shift+F10). 
 
Direct access to menu bar would be an access key for each menu item visible within the menu bar. Access keys can be multiply on the screen, for best ui experience the menu bar's access should be unique, but it's not a must.

A problem still is, that this kind of "menu bar" is in conflict with the browsers menu bar. So the standard hotkeys cannot be used. (Alt or F10)


> Also, if a special sequence is used, where should focus go when a menu is 
> closed?

On the menu bar control. It is the element that has been tabbed to and first received focus. For sub menus the focus always returns to the parent menu item. If the menu was triggered by using access keys it would be efficient to return focus to the ui element that had focus before the access key was issued.


> Menu Bar Behavior
> Terminology:
> Menu bar item is a top level item in a menu bar (Like File, Edit, View in
> Windows Explorer)
> open menu is the menu which is associated with a particular menu bar item
> and opens up below that menu bar item.
(why below, could also be up, left or right, a menu bar screen element does not have to be horizontally aligned and top of the screen) 


> When a menu bar item has focus, pressing enter should open the menu and
> place focus on the first menu item in the opened menu 

(sub menus usually open upon the parent is being focused - otherwise the user needs to know what is beyond to trigger the opening. perception rate will be much higher with automatically opened sub menus, as the users are known from most operating systems. The design here is in conflict to the mouse interaction design later in the menu behavior proposal.)


> Mouse over an menu item sets focus to that item
> Mouse over a menu item which has a submenu will open the submenu. Focus
> remains on the parent menu item.  

(This is inconsistent to above definition of keyboard behaviour where a user must trigger with [enter] to open the sub menu) 



Findings on the design:

The current design sticks to an horizontally aligned menu bar which is mounted top of the screen. From my point of view we might have a look over the horizon:
Since web design does not stick to rich client software's screen design paradigms it might be helpful to define the standard in way so it conforms to a menu bar which can be mounted on a screen at any place and any alignment.
The arrow keys will then behave in a combined and well defined manner: The arrow keys that point into the direction of the menubar control's alignment will navigate on the menu items. The arrow keys not pointing to the alignment's direction will open/close sub menus:
For a horizontal menu bar left and right navigate on the menu bar item level. Up/down will open or close the sub menu.
For a vertical menu bar the up and down keys navigate on a menu bar item level. Left/right will open or close the sub menu.
 
At SAP we defined the following standard for lists: For single dimension vectors the up and left key affect navigation to the previous item and right and bottom into the opposite direction. Either way a control is aligned, it can also be uniquely navigated. Blind users don't need to know the alignment.
For the menu bar and each sub menu, the speech output of the menu's alignment attribute is mandatory because of the different behaviors: navigation/expand+collapse.
 
Enter and Escape work as proposed. Escape always closes one menu level and focus returns to it's parent menu item.
 
Oliver Keim / Stefan Schnabel
Interaction Designer, User Interface Design Expert, Senior Developer

SAP AG
User Experience - Accessibility
Robert Bosch Str. 30
69190 Walldorf, Germany
T +49 6227 7-41522
F +49 6227 78-18394
mailto:oliver.keim@sap.com
www.sap.com

Sitz der Gesellschaft/Registered Office: Walldorf, Germany
Vorstand/SAP Executive Board: Henning Kagermann (Sprecher/CEO), Shai Agassi, Léo Apotheker, Werner Brandt, Claus Heinrich, Gerhard Oswald, Peter Zencke 
Vorsitzender des Aufsichtsrats/Chairperson of the SAP Supervisory Board: Hasso Plattner, Registergericht/Commercial Register Mannheim No HRB 350269
Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder sonstige vertrauliche Informationen enthalten. Sollten Sie diese E-Mail irrtümlich erhalten haben, ist Ihnen eine Kenntnisnahme des Inhalts, eine Vervielfältigung oder Weitergabe der E-Mail ausdrücklich untersagt. Bitte benachrichtigen Sie uns und vernichten Sie die empfangene E-Mail. Vielen Dank.
This e-mail may contain trade secrets or privileged, undisclosed, or otherwise confidential information. If you have received this e-mail in error, you are hereby notified that any review, copying, or distribution of it is strictly prohibited. Please inform us immediately and destroy the original transmittal. Thank you for your cooperation.



Dr. Stefan Schnabel 
Accessibility Expert
SAP User Experience Accessibility

SAP AG 
Dietmar-Hopp-Allee 16, 69190 Walldorf, Germany
T: +49 (6227) 7-65652
F: +49 (6227) 78-29877

mailto:stefan.schnabel@sap.com
www.sap.com
Sitz der Gesellschaft/Registered Office: Walldorf, Germany
Vorstand/SAP Executive Board: Henning Kagermann (Sprecher/CEO), Shai Agassi, Léo Apotheker, Werner Brandt, Claus Heinrich, Gerhard Oswald, Peter Zencke
Vorsitzender des Aufsichtsrats/Chairperson of the SAP Supervisory Board: Hasso Plattner
Registergericht/Commercial Register Mannheim No HRB 350269

Diese E-Mail kann Betriebs- oder Geschäftsgeheimnisse oder sonstige vertrauliche Informationen enthalten. Sollten Sie diese E-Mail irrtümlich erhalten haben, ist Ihnen eine Kenntnisnahme des Inhalts, eine Vervielfältigung oder Weitergabe der E-Mail ausdrücklich untersagt.
Bitte benachrichtigen Sie uns und vernichten Sie die empfangene E-Mail. Vielen Dank.

This e-mail may contain trade secrets or privileged, undisclosed, or otherwise confidential information. If you have received this e-mail in error, you are hereby notified that any review, copying, or distribution of it is strictly prohibited. Please inform us immediately and destroy the original transmittal. Thank you for your cooperation. 

Received on Wednesday, 14 February 2007 10:22:52 UTC