Closed Bug 2070914 Opened 1 month ago Closed 1 month ago

The split view splitter reports no ARIA position until one has been measured

Categories

(Toolkit :: UI Widgets, task, P3)

task

Tracking

()

RESOLVED FIXED
158 Branch
Tracking Status
firefox158 --- fixed

People

(Reporter: florian, Assigned: florian)

References

(Blocks 1 open bug)

Details

Attachments

(1 external file, 1 obsolete file)

split-view-splitter in toolkit/content/widgets/tabbox.js sets aria-valuenow only asynchronously. Until the first measurement arrives it is a role="separator" with no position for a screen reader to report.

browser_tab_splitview_resize.js and browser_tab_splitview_telemetry.js fail the mochitest accessibility checks for this once the checks require a position, because the check runs at click time before the attribute exists. Setting a position when the splitter is created fixes both.

The splitter is a separator with tabindex="0", so ARIA requires it to report a
position, but it has none until a layout flush, and the values are removed
again when a split view is torn down. Between creation and that first flush,
and from a teardown until the next one, a screen reader finds a window splitter
that reports no position at all.

assertCanBeClicked can never accept a window splitter: findInteractiveAccessible
and assertInteractive take only INTERACTIVE_ROLES, and the action count rule
demands an accessible action that ARIAMap.cpp gives ARIA separator and scrollbar
never. Making all of INTERACTIVE_IF_FOCUSABLE_ROLES reachable would also make
focusable gridcells findable and bypass isAccessibleGridcell, so this covers
those two roles only, and requires aria-valuenow in the action count's place.
The only node it newly judges tree-wide is the split view splitter in
tabbox.js.

Attachment #9640509 - Attachment is obsolete: true
Severity: -- → S3
Priority: -- → P3
Severity: S3 → --
Type: defect → task
Pushed by fqueze@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/9fbac5a6e20e https://hg.mozilla.org/integration/autoland/rev/d7bc071addea Let a focusable ARIA separator satisfy the mochitest accessibility checks, r=Jamie,devtools-reviewers,nchevobbe.

Reverted this because it was causing Linux mochitests failures.

Flags: needinfo?(florian)
Pushed by fqueze@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/d2fc2f22fe59 https://hg.mozilla.org/integration/autoland/rev/40590e94cecd Let a focusable ARIA separator satisfy the mochitest accessibility checks, r=Jamie,devtools-reviewers,nchevobbe.
Status: ASSIGNED → RESOLVED
Closed: 1 month ago
Resolution: --- → FIXED
Target Milestone: --- → 158 Branch
See Also: → 2074802
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: