initial commit
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
---
|
||||
epic: 14
|
||||
story: 14.3
|
||||
title: "Keyboard-Only Operation"
|
||||
status: draft
|
||||
---
|
||||
|
||||
## Epic 14 — Accessibility & Internationalization
|
||||
**Goal:** Make CalcPad usable by everyone regardless of ability, language, or locale.
|
||||
|
||||
### Story 14.3: Keyboard-Only Operation
|
||||
|
||||
As a user who cannot use a mouse,
|
||||
I want to perform every CalcPad action using only the keyboard,
|
||||
So that I have full access to all features without requiring a pointing device.
|
||||
|
||||
**Acceptance Criteria:**
|
||||
|
||||
**Given** the CalcPad application on any platform
|
||||
**When** the user presses Tab
|
||||
**Then** focus moves through all interactive elements in a logical, predictable order: toolbar, sheet lines, sidebar, dialogs
|
||||
**And** a visible focus indicator is always present on the focused element
|
||||
|
||||
**Given** the user is navigating the sheet
|
||||
**When** keyboard shortcuts are used
|
||||
**Then** Arrow Up/Down moves between lines
|
||||
**And** Enter creates a new line below the current line
|
||||
**And** Cmd/Ctrl+Shift+K deletes the current line
|
||||
**And** Cmd/Ctrl+/ toggles a comment on the current line
|
||||
**And** Escape dismisses any open dropdown, autocomplete, or dialog
|
||||
|
||||
**Given** any dropdown, autocomplete suggestion list, or modal dialog is visible
|
||||
**When** the user interacts via keyboard
|
||||
**Then** Arrow keys navigate options, Enter selects, and Escape dismisses
|
||||
**And** focus is trapped inside modal dialogs until they are dismissed
|
||||
|
||||
**Given** the complete set of CalcPad features (file operations, export, settings, theme switching, sharing)
|
||||
**When** the feature is audited for keyboard access
|
||||
**Then** every feature is reachable and operable without a mouse
|
||||
**And** no interaction requires hover, drag-and-drop, or right-click as the only means of access
|
||||
Reference in New Issue
Block a user