- Success Criterion 2.1.4
- Conformance level A
Shortcut Off-Switch Hidden Behind the Very Barrier It Fixes
2.1.4 — Character Key Shortcuts
Scenario
Setting
A food delivery app's restaurant menu
What’s wrong
"Turn off" setting hidden behind the very interaction pattern users can't perform.
Example
document.addEventListener('keydown', (e) => {
if (e.key === 'c') addFocusedItemToCart();
if (e.key === 'g') pendingGoTo = true;
if (pendingGoTo && e.key === 's') openSettingsPanel(); // the ONLY way into settings
});
<!-- there is no visible, clickable link to the settings panel anywhere on the page --> Why it matters
A diner who wants to disable the 'c' shortcut because it keeps adding random items to their cart can only reach settings through another shortcut, "g" then "s."
How to test
Try to reach the 'turn off shortcuts' setting using only the method a shortcut-disabled user would have: if reaching the setting itself requires the very interaction the shortcuts block, it fails.
How to fix
The mechanism to turn off or remap shortcuts must be reachable through an ordinary link or button, never only through another character-key shortcut.
<a href="/settings/shortcuts" class="settings-link">Keyboard shortcuts</a>
<!-- always provide a visible, mouse- and keyboard-operable link into shortcut settings --> Outcome
A diner clicks the visible settings link and turns off the shortcut without needing to trigger it first.
Who is affected
Speech-input users triggering accidental shortcuts have no escape route, since the fix is locked behind the same input method causing the problem.
Learn more
- Understanding Understanding document (opens in a new tab)
Related scenarios
- Single-Letter Keyboard Shortcut With No Way to Turn It Off
- Global Single-Key Shortcut That Fires During Speech Dictation
- Library’s Default Hotkeys Shipped With No Settings Toggle
- Shortcut Remapping That Doesn’t Allow Modifier Key Combinations
- Shortcut Toggle Setting That Resets on Every Page Load
- Keyboard Shortcut That Fires Even While Typing in a Field