FabMenu
A Fab that opens a stack of actions - extended pills, each a FabMenuItem - from one corner of a page.
Keyboard
- Enter and Space press the trigger. On a closed trigger the arrows of the axis the actions go along open it: ArrowUp and ArrowDown for a column, ArrowLeft and ArrowRight for a row.
- Open, those arrows move the focus along what is drawn - the actions and the trigger, top to bottom or from side to side - without wrapping, skipping an action that is off; Home and End go to the first and the last. A row reads the other way right to left, and so do its arrows. The other axis's arrows are the page's.
- Escape closes it and returns the focus to the trigger; so does choosing an action. A press anywhere else closes it too, and leaves the focus where the press put it.
Accessibility
- The trigger has
aria-expandedand, while open,aria-controlsthe stack. A circular trigger needs anaria-label; an extended one is named by its label. - Closed, the actions are
visibility: hidden: out of the tab order and the accessibility tree. - The stack is a disclosure of buttons, not a
menu: useMenufor a list of commands that takes arrow keys as its only way in.