Skip to content

feat(ui): searchable keyboard shortcut cheat sheet overlay (#428)#44

Open
advancedresearcharray wants to merge 1 commit into
mainfrom
feat/issue-428-keyboard-shortcuts-verified
Open

feat(ui): searchable keyboard shortcut cheat sheet overlay (#428)#44
advancedresearcharray wants to merge 1 commit into
mainfrom
feat/issue-428-keyboard-shortcuts-verified

Conversation

@advancedresearcharray

@advancedresearcharray advancedresearcharray commented Jun 30, 2026

Copy link
Copy Markdown
Owner

Summary

Closes kiwifs#428

Replaces the static shortcuts dialog with a searchable CommandDialog overlay. Plain ? (outside inputs/editors) and Cmd+/ open the cheat sheet. Shortcuts are grouped (Navigation, Views, Editor, Custom), platform-aware ( vs Ctrl), and populated from useKeybindings().

Changes

File Change
ui/src/components/KeyboardShortcuts.tsx Searchable CommandDialog with grouped sections and per-key <kbd> segments
ui/src/lib/kiwiKeybindings.ts isTextInputTarget, shouldOpenShortcutsHelp, formatChordSegments, getCustomShortcutItems
ui/src/lib/kiwiKeybindings.test.ts Regression tests for new helpers and custom-default dedupe
ui/src/App.tsx Plain ? toggle, HelpCircle toolbar button
ui/src/components/ui/command.tsx Optional title prop on CommandDialog for a11y

Acceptance criteria

  • ? opens overlay (guarded by isTextInputTarget)
  • Cmd+/ opens via shortcuts_help binding
  • Shortcuts grouped by category
  • Searchable/filterable list
  • Platform-correct modifier keys
  • Custom keybindings from config in dedicated section
  • Esc dismisses (via close_overlay + resolveOverlayDismiss priority)
  • Click-outside dismisses (shadcn Dialog)
  • HelpCircle toolbar button for mouse users

Test plan

  • npm test -- --run kiwiKeybindings overlayDismiss — 19 tests passed
  • npm test -- --run — 196 tests passed
  • go test ./internal/keybindings/... -count=1 — ok

@advancedresearcharray advancedresearcharray changed the title feat(ui): keyboard shortcut cheat sheet overlay (#428) feat(ui): searchable keyboard shortcut cheat sheet overlay (#428) Jun 30, 2026
@advancedresearcharray advancedresearcharray force-pushed the feat/issue-428-keyboard-shortcuts-verified branch 2 times, most recently from 0ac0633 to 2bf1a15 Compare June 30, 2026 05:04
Replace the static shortcuts dialog with a searchable CommandDialog,
wire bare ? to open help outside inputs/editors, and add a toolbar
HelpCircle button for mouse users. Closes kiwifs#428.
@advancedresearcharray advancedresearcharray force-pushed the feat/issue-428-keyboard-shortcuts-verified branch from 2bf1a15 to 53eb25c Compare June 30, 2026 05:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(ui): keyboard shortcut cheat sheet overlay

1 participant