Threads pane rows cannot be reached or activated from the keyboard
Categories
(DevTools :: Debugger, defect)
Tracking
(Accessibility Severity:s2, firefox158 fixed)
| Tracking | Status | |
|---|---|---|
| firefox158 | --- | fixed |
People
(Reporter: florian, Assigned: florian)
References
(Blocks 2 open bugs)
Details
(Keywords: access)
Attachments
(1 external file)
A row in the debugger's Threads pane is a div with an onClick, rendered by devtools/client/debugger/src/components/SecondaryPanes/Thread.js. It has no role and no tabindex, so there is no way to select a thread without a mouse, and a11y_checks reports Node is not accessible via accessibility API when a test clicks one.
Making the row a real button gives it the role, the focusability and a name from its own text, all without new strings. The selected row can carry aria-current for the state its selected class shows visually; aria-selected is not available outside a listbox, and adopting one would oblige arrow key navigation the pane does not have. A paused thread's badge becomes part of the button's name, which is intended.
| Assignee | ||
Comment 1•1 month ago
|
||
A row in the Threads pane was a clickable div, so it had no interactive
accessible and no way to reach it from the keyboard. A button gets both for
free, and aria-current carries the selection the selected class shows.
The a11y_checks annotations this retires were filed as Bug 1849028.
Updated•1 month ago
|
Comment 2•1 month ago
|
||
The Bugbug bot thinks this bug is an accessibility bug, but please revert this change in case of error.
Comment 3•1 month ago
|
||
Ideally, this would be a proper listbox. Making these all buttons will result in a lot of tab order clutter and makes navigation a bit tedious. That said, buttons are better than no accessibility at all and implementing the listbox pattern is quite a bit more work, so I think we can deal with that in a lower severity follow-up.
Comment 6•1 month ago
|
||
Backed out for causing dt failures @ browser_markup_dom_mutation_breakpoints.js & browser_styleeditor_telemetry.js
Backout link: https://hg.mozilla.org/integration/autoland/rev/a4a72a81ee97f7ab468deb6e1a3dd47cabc7d1e5
Comment 8•1 month ago
|
||
| bugherder | ||
Updated•1 month ago
|
| Assignee | ||
Updated•19 days ago
|
Description
•