Feature: #92704 - Improve keyboard navigation for module menus¶
See forge#92704
Description¶
The module menu implements the keyboard navigation suggested
by the ARIA Best Practices 1.1 for roles menubar
and menu
.
The first level menu has a menubar
role, the second level
submenus have a menu
role. The buttons have the menuitem
role. Both the menubar
and the menu
are oriented
vertically for assistive technology matching the visual
representation which affects the keyboard navigation.
Space/Enter shows the module unless the item has a submenu. Space/Enter and Right Arrow open a submenu and move focus to the first item.
Up/Down Arrow and Home/End navigate within the current level of the menu. Ctrl + Home/End navigate within the first level of the menu (extension of the ARIA pattern).
Left/Right Arrow moves to the parent items predecessor/successor when on a submodule item. The submenu will not be closed (deviation from the ARIA pattern).
Escape moves to the parent item of a submodule item. The submenu will not be closed (deviation from the ARIA pattern).
Tab and Shift + Tab move to the next item outside of the module menu.
The help menu implements the keyboard navigation suggested
by the ARIA Best Practices 1.1 for the role menu
. This
is the same as the module menu but limited to a single level.
Impact¶
The main module menu and the help menu are now usable with keyboard alone. This includes users that access the backend with a screen reader or other assistive technology.