fix: improve accessibility for screen reader users#355
Conversation
- Enable Monaco editor accessibility support (accessibilitySupport: 'on') to allow screen readers to read typed text and prevent focus jumping to autocomplete suggestions - Add aria-label and aria-keyshortcuts to Run button to announce keyboard shortcut to screen readers - Add role, aria-sort, tabIndex and keyboard support to DataGrid column headers - Add aria-live region to connection test result message - Add aria-label and aria-expanded to sidebar expand buttons, convert clickable divs to semantic button elements Fixes TabularisDB#86
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Files Reviewed (1 file)
Previous Review Summaries (3 snapshots, latest commit 6267fb8)Current summary above is authoritative. Previous snapshots are kept for context only. Previous review (commit 6267fb8)Status: 1 Issue Found | Recommendation: Address before merge Overview
Issue Details (click to expand)WARNING
Files Reviewed (3 files)
Fix these issues in Kilo Cloud Previous review (commit 9ad5b6c)Status: 1 Issue Found | Recommendation: Address before merge Overview
Issue Details (click to expand)WARNING
Files Reviewed (1 file)
Fix these issues in Kilo Cloud Previous review (commit ce2a141)Status: 1 Issue Found | Recommendation: Address before merge Overview
Issue Details (click to expand)WARNING
Files Reviewed (14 files)
Reviewed by kimi-k2.7-code-20260612 · Input: 42.3K · Output: 5.6K · Cached: 272.6K |
Code Review SummaryStatus: 1 Issue Found | Recommendation: Address before merge Overview
Issue Details (click to expand)WARNING
Files Reviewed (14 files)
|
NewtTheWolf
left a comment
There was a problem hiding this comment.
Thanks for tackling this — solid accessibility work! 🙏 The div→button conversions, the always-mounted aria-live region (exactly the right pattern so it actually gets announced), and the keyboard support on sort headers are all good, and the i18n is complete across all 8 locales. Typechecks clean.
Three small things — all optional, none blocking. Happy to merge as-is if you'd rather leave them:
aria-sort(mentioned in the description but not in the diff) —src/components/ui/DataGrid.tsxsort headers getrole/tabIndex/aria-label, but notaria-sort="ascending|descending|none", which is what actually announces the current sort state to a screen reader. Would round out exactly what the PR set out to do.- Monaco
accessibilitySupport: 'on'forces screen-reader rendering for every user; the default'auto'already enables it when a screen reader is detected and is the recommended setting — worth considering'auto'instead. aria-keyshortcuts="Control+Enter"is hardcoded, so on macOS (Cmd+Enter) the announced shortcut won't match.
Want to fold these in? Otherwise it's good to go from my side. 👍
|
Thanks for the review @NewtTheWolf
|
|
Thanks a lot for this, Artur. Accessibility is something we really care about and these are exactly the kind of changes that make a real difference for people, so I appreciate you taking the time. I'll merge this shortly. Please keep them coming, improvements like this are genuinely important to us. If you feel like it, come hang out on our Discord: https://discord.com/invite/K2hmhfHRSt |
Fixes #86