Skip to content

fix(a11y): screen readers and the keyboard - #5

Merged
hazeliscoding merged 8 commits into
mainfrom
fix/accessibility-audit
Oct 10, 2026
Merged

hazeliscoding merged 8 commits into
mainfrom
fix/accessibility-audit

Conversation

@hazeliscoding

@hazeliscoding hazeliscoding commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

The first v1.1.1 item from the 2026-10-10 accessibility audit. This PR also adds the v1.1.1 milestone to ROADMAP.md.

  • Rating: takes Tab focus with a teal ring. The arrows step it, Home and End jump to the ends, 0–5 pick a value, and Delete clears it. Screen readers read it as a "Usefulness" slider whose value is the rating's word, such as "Solid".
  • Toasts and Quick save's error are live regions. Each stays in the window and takes the message as its name.
    • Avalonia 12.1.3's peers don't report a name change, and that's what its Windows backend raises LiveRegionChanged on. AccessibleNames now reports it for live regions.
    • Checked with UI Automation against a scratch copy on Windows: the error and a toast each raised LiveRegionChanged, with their own text as the element's name.
    • Avalonia 12.1.3’s Linux accessibility backend (AT-SPI) has no live-region support, so Linux doesn’t announce these yet.
  • Hearts read "Add to favorites" or "Remove from favorites", where all of them used to read "Favorite".
  • Show details switches to "Hide details", with a downward chevron, once the details are open.
  • Workflows: the Run tab's Previous and Next buttons point left and right, to match the step strip. This adds Lucide's arrow-left to the generated icons.
  • User guide: mentions rating from the keyboard.

Tests:

  • New in AccessibilityTests: the rating from the keyboard, both announcers (live setting, name, and the name-changed event), the heart's names, and Show details.
  • Full suite on the last commit: all passed. The performance tests ran on their own; run alongside the UI tests, two of them miss their time limit on this machine.
  • Each commit in between builds and passes AccessibilityTests.

The editor's rating took only clicks. It now takes Tab focus with a teal ring, steps with the arrow keys, jumps with Home, End and the digits, and clears with Delete. Screen readers read it as a Usefulness slider whose value is the rating's word.
Each is now a live region that stays in the window and takes the message as its name. Avalonia's peers don't report a name change, which is what Windows listens for, so AccessibleNames reports it for live regions. Checked with UI Automation on Windows: the error and a toast each raised LiveRegionChanged with their text.
Every heart was read as "Favorite", whether the prompt was one or not. It's now "Add to favorites" or "Remove from favorites", in its tooltip and for screen readers.
It kept the same words and chevron either way. Open, it reads "Hide details" with a downward chevron, in error dialogs and on the startup error.
The Run tab's steps run across in a row, but Previous and Next showed up and down arrows. Adds Lucide's arrow-left to the generated icons.
@hazeliscoding
hazeliscoding merged commit f24d62e into main Oct 10, 2026
3 checks passed
@hazeliscoding
hazeliscoding deleted the fix/accessibility-audit branch October 10, 2026 22:52
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