Common Desktop Environment: Style Guide and Certification Checklist

Mouse-Based Navigation

 

n/a 

 

 

 

Required 

3-1: 

When the keyboard focus policy is explicit, pressing BSelect on a component moves focus to it, except for components, such as scroll bars, that are used to adjust the size and location of other elements.  

BSelect provides a convenient mechanism for using the mouse to move focus when the keyboard focus policy is explicit. 

Required 

3-2: 

When the pointer is on a menu, your application uses BSelect Press to activate the menu in a spring-loaded manner.  

A spring-loaded menu is one that appears when the user presses a mouse button, remains on the screen for as long as the button is pressed, and disappears when the user releases the button. BSelect, mouse button 1, provides a means of activating spring-loaded menus that is consistent across applications. 

Required 

3-3: 

When the pointer is in an element with an inactive pop-up menu and the context of the element allows the pop-up menu to be displayed, your application uses BMenu Press to activate the pop-up menu in a spring-loaded manner.  

The availability of a pop-up menu can depend on the location of the pointer within an element, the contents of an element, or the selection state of an element. BMenu, mouse button 3, provides a consistent means of activating a spring-loaded pop-up menu. 

Required 

3-4: 

If the user takes an action to post a pop-up menu, and a menu can be posted for both an inner element and an outer element that contains the inner element, the pop-up menu for the internal element is posted.  

This specification ensures that the pop-up menu for an internal element is always accessible. 

Required 

3-5: 

Once a pop-up menu is posted, BMenu behaves just as BSelect does for any menu system.  

The specified operation of BMenu is for manipulating pop-up menus. 

Required 

3-6: 

BSelect is also available from within posted pop-up menus and behaves just as in any menu system.  

Once a pop-up menu is posted, the user can select an element from it using the standard selection mechanism, BSelect. 

Required 

3-7: 

When a menu is popped up or pulled down in a posted manner, your application places the location cursor on the menu's default entry, or on the first entry in the menu if there is no default entry.  

A posted menu remains visible until it is explicitly unposted. Placing the location cursor on the default entry allows the user to select the default operation easily. When there is no default entry, placing the location cursor on the first entry yields uniform behavior across applications. 

Required 

3-8: 

Your application removes a spring-loaded menu system when the mouse button that activated it is released, except when the button is released on a cascading button in the menu hierarchy.  

The concept of a spring-loaded menu system requires that the menu disappear when the mouse button is released. 

Required 

3-9: 

While a spring-loaded menu system is popped up or pulled down, moving the pointer within the menu system moves the location cursor to track the pointer.  

Once a spring-loaded menu system has appeared on the screen, the user needs to be able to maneuver the location cursor through the menu system using the mouse. 

Required 

3-10: 

When a spring-loaded menu system is popped up or pulled down and the pointer rests on a cascading button, the associated menu is pulled down and becomes traversable. The associated menu is removed, possibly after a short delay, when the pointer moves to a menu item outside of the menu or its cascading button. 

The user needs to be able to use the mouse to access all of the associated menus of a menu system. This feature allows the user to move quickly to any menu in a menu system. 

Required 

3-11: 

When a spring-loaded menu system that is part of the menu bar is pulled down, moving the pointer to any other element on the menu bar unposts the current menu system and posts the pull-down menu associated with the new element.  

This feature of a spring-loaded menu system allows the user to browse quickly through all of the menus attached to a menu bar. 

Required 

3-12: 

When a spring-loaded menu system is popped up or pulled down, and the button that activated the menu system is released within a component in the menu system, that component is activated. If the release is on a cascading button or an option button, the associated menu is activated in a posted manner if it was not posted prior to the associated button press.  

Releasing the mouse button that activated a spring-loaded menu provides a means of activating a menu element that is consistent across applications. 

Required 

3-13: 

When the pointer is in an area with a pop-up menu, your application uses BMenu Click to activate the menu in a posted manner if it was not posted prior to the BMenu Click.  

BMenu Click provides a means of posting a pop-up menu that is consistent across applications. 

Required 

3-14: 

Once a pull-down or option menu is posted, BSelect Press in the menu system causes the menu to behave as a spring-loaded menu.  

This feature of a posted pull-down or option menu allows the user to switch easily between using a posted menu and a spring-loaded menu. 

Required 

3-15: 

If a button press unposts a menu and that button press is not also passed to the underlying component, subsequent events up to and including the button release are not passed to the underlying component.  

When a button press unposts a menu, the press can be passed to the underlying component. Whether or not it is passed to the underlying component, the press can have additional effects, such as raising and giving focus to the underlying window. If the press is not passed to the underlying component, events up to and including the release must not be passed to that component. 

Required 

3-16: 

Once a pop-up menu is posted, BSelect Press or BMenu Press in the menu system causes the menu to behave as a spring-loaded menu.  

This feature of a posted pop-up menu allows the user to switch easily between using a posted menu and a spring-loaded menu. 

Optional 

b: 

BMenu Press or BMenu Click on a menu bar item displays the menu. 

Required 

c: 

BMenu Press or BMenu Click on an option button displays the option menu. 

Required 

d: 

BSelect Press on a text field causes the text cursor to be inserted at the mouse cursor position.