Closed Bug 2071236 Opened 1 month ago Closed 1 month ago

Threads pane rows cannot be reached or activated from the keyboard

Categories

(DevTools :: Debugger, defect)

defect

Tracking

(Accessibility Severity:s2, firefox158 fixed)

RESOLVED FIXED
158 Branch
Accessibility Severity s2
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.

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.

Assignee: nobody → florian
Status: NEW → ASSIGNED

The Bugbug bot thinks this bug is an accessibility bug, but please revert this change in case of error.

Keywords: access

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.

Accessibility Severity: --- → s2
Pushed by smolnar@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/3f2ac22ca297 https://hg.mozilla.org/integration/autoland/rev/a4a72a81ee97 Revert "Bug 2071236 - Make the debugger's thread list rows real buttons, r=nchevobbe." for causing dt failures @ browser_markup_dom_mutation_breakpoints.js & browser_styleeditor_telemetry.js
Status: ASSIGNED → RESOLVED
Closed: 1 month ago
Resolution: --- → FIXED
Target Milestone: --- → 158 Branch
QA Whiteboard: [qa-triage-done-c159/b158]
Flags: needinfo?(florian)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: