Skip to content

a11y: keyboard access to history row actions - #256

Merged
omercelikdev merged 1 commit into
mainfrom
a11y/keyboard-row-actions
Jul 12, 2026
Merged

a11y: keyboard access to history row actions#256
omercelikdev merged 1 commit into
mainfrom
a11y/keyboard-row-actions

Conversation

@omercelikdev

Copy link
Copy Markdown
Owner

The history list uses a roving aria-activedescendant model — focus never leaves the container, so the per-row action buttons (hover-only) were unreachable by keyboard.

Changes

  • Reveal on selection — row actions now also show on the keyboard-selected row, so keyboard users can see what's available (pin state, edit, menu), not just mouse hoverers.
  • Cmd/Ctrl+E edits/opens the selected clip, checked before the input guard (like Cmd/Ctrl+Backspace) so it works while the search box keeps focus. Paste (Enter), plain paste (Shift+Enter), delete (Cmd/Ctrl+Backspace) were already keyboard-driven — edit completes the primary set.

Tests

Ctrl+E edits the highlighted row; a bare "e" does not (search-safe). tsc clean · 608 tests green.

🤖 Generated with Claude Code

The history list uses a roving aria-activedescendant model, so focus never
leaves the container and the per-row action buttons (which appear on hover)
were unreachable by keyboard. Two changes close that gap:

- Row actions now also reveal on the keyboard-selected row, so a keyboard
  user can see what's available (pin state, edit, menu) — not just mouse
  hoverers.
- Cmd/Ctrl+E edits/opens the selected clip, checked before the input guard
  (like Cmd/Ctrl+Backspace delete) so it works while the search box keeps
  focus. Paste (Enter), plain paste (Shift+Enter) and delete
  (Cmd/Ctrl+Backspace) were already keyboard-driven; edit completes the set.

Tests: Ctrl+E edits the highlighted row; a bare "e" does not (search-safe).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@omercelikdev
omercelikdev merged commit cde052b into main Jul 12, 2026
@omercelikdev
omercelikdev deleted the a11y/keyboard-row-actions branch July 12, 2026 19:03
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.

1 participant