Open
Description
When testing screen reader support in the standalone sample app on Windows (NVDA screen reader) and macOS (using VoiceOver), these issues were identified by the IJ UI team.
These need to be looked into further, and then we determine:
- It's a Jewel issue (e.g., wrong Role) -> File a bug and fix in Jewel
- It's a CMP issue -> File a CMP bug
- It's a missing API (e.g., missing Role) -> File a Jetpack Compose bug
The expected output of this task is a comprehensive list of filed/fixed issues.
Radio buttons
- VoiceOver doesn't announce the radio button state at all
- NVDA says "not checked" or "selected not checked" depending on the state, instead of "checked" or "not checked" respectively
https://youtrack.jetbrains.com/issue/CMP-7469/a11y-RadioButton-issues-with-screen-readers-on-Windows
Checkboxes
- NVDA announces all check boxes as "read only"
https://youtrack.jetbrains.com/issue/CMP-7477/a11y-Checkbox-issues-with-screen-readers-on-Windows
Dropdowns and combo boxes
- Dropdown has a "button" role; "dropdown list" would be better rock3r/intellij-community@0ac056e
- Dropdown popup items have "button" role; no role would be better rock3r/intellij-community@18a41c6
- Screen readers can't review text in editable combo box (type some text and use left/right arrows, or select some text: nothing is announced) https://youtrack.jetbrains.com/issue/CMP-7486/a11y-BasicTextField-is-missing-screen-reader-interactions
- Items in the combo box popup are not announced, probably because it's not focused
Trees/SLC
- Tree items are not announced when using up/down arrows
- When focus is on the tree, Tab key should move focus to the next component instead of the next tree node
Sliders
- Slider doesn't announce value change when using left/right arrows
Notes: Keyboard manipulation works on both stepped and continuous slider. Only the stepped slider emits sound cues when manipulated via keyboard.
Tabs
- Tab key shouldn't move focus between individual tabs, and instead move focus to the next component
- Left/right arrows are not moving focus between tabs
- Initial focus goes to the close button, in editor tabs
- No focus indication for editor tabs
Seb's note: I'm clarifying what the expected behavior is for editor tabs, since they're not focusable in Swing. I think at a minimum the close button, if it exists, should not be focusable, but tbd.
Text field/area
- Text in text areas and text fields is not accessible. Instead, the text content is set to the accessible name, which is incorrect.
- NVDA announces the role as "scroll pane" (which it shouldn't)
https://youtrack.jetbrains.com/issue/CMP-7461/Accessibility-screen-readers-cant-review-text-in-a-text-field
https://youtrack.jetbrains.com/issue/CMP-2136/Accessibility-TextField-labels-are-not-exposed-to-screen-reader - Text field placeholder is not accessible, it could be set to the accessible description
Banners
- Close button and actions don't have an accessible name