a11y: address PR feedback and polish docs

- HistoryTable: skip row key handler when focus is on Actions button (Enter/Space)
- StoryList: expose selected story (aria-pressed, 'Selected' in label)
- ProfileCard: skip card key handler when focus is on Export/Edit/Delete
- VoicesTab: keep table semantics; edit button in first cell instead of role=button on row
- PR-ACCESSIBILITY.md: 'Fine-tune' wording, 'focus on the text area' phrasing

Made-with: Cursor
This commit is contained in:
Richard Orme
2026-03-07 12:36:02 -08:00
parent 19a28bf6c5
commit 9955e1dcb7
5 changed files with 25 additions and 28 deletions
+2 -2
View File
@@ -18,7 +18,7 @@ Improvements to support screen reader and keyboard users across the main app sur
### Generation UI (text box and voice choice)
- **Generate speech** (submit) and **Fine tune instructions** (sliders) Icon buttons now have `aria-label` (and state for fine-tune, e.g. "Fine tune instructions, on").
- **Generate speech** (submit) and **Fine-tune instructions** (sliders) Icon buttons now have `aria-label` (and state for fine-tune, e.g. "Fine-tune instructions, on").
### Voice selection (cards on Generate screen)
@@ -28,7 +28,7 @@ Improvements to support screen reader and keyboard users across the main app sur
### History list (generated samples)
- Each **sample row** is focusable with `role="button"` and an `aria-label` (e.g. "Sample from [profile], [duration], [date]. Press Enter to play."); **Enter/Space** plays or restarts.
- **Transcript textarea** has `aria-label` (e.g. "Transcript for sample from [profile], [duration]") so focus in the text area is announced in context.
- **Transcript textarea** has `aria-label` (e.g. "Transcript for sample from [profile], [duration]") so when you focus on the text area, the sample is announced in context.
### Voices tab (table)