---
url: https://brand.okrado.com/patterns/shortcuts/
title: Keyboard shortcuts
description: The shortcut registry and the dialog that lists the shortcuts available on a page.
kind: reference
owner: hmdmsd
updated: 2026-11-03
review_by: 2027-02-28
audience:
  - designer
  - developer
  - agent
---

# Keyboard shortcuts

> The shortcut registry and the dialog that lists the shortcuts available on a page.

Shortcuts are registered in one place, so the same keys do the same thing everywhere and the help dialog lists exactly what is bound. A shortcut never fires while a person is typing in a text field.

## Behaviour

Read from the component manifest, so this is the component’s own contract. See [Overlays](https://brand.okrado.com/patterns/overlays/) for layers, stacking and dismissal shared by all layers.

### `ShortcutsDialog`

| Stage         | beta                                                                                                                                                                                                                                                              |
| ------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Keyboard      | - ? opens it from anywhere outside a text field
- Tab and Shift+Tab loop inside
- Escape closes it
- Escape while recording cancels the recording                                                                                                                 |
| Dismissal     | * escape: yes
* outside press: yes
* close button: yes
* back gesture: yes                                                                                                                                                                                        |
| Stacking      | Opens over a drawer; only an AlertDialog opens over it.                                                                                                                                                                                                           |
| Accessibility | - A dialog with one list per group; Change moves focus to a button that records the next keys by their physical key (`event.code`), Escape cancels, and the result is announced politely; a clash with another entry of the same scope is refused and said aloud. |
| Pattern       | [APG: dialog modal](https://www.w3.org/WAI/ARIA/apg/patterns/dialog-modal/)                                                                                                                                                                                       |
| Docs          | [Storybook](https://brand.okrado.com/components/?path=/docs/components-shortcutsdialog--docs)                                                                                                                                                                     |
