[Webkit-unassigned] [Bug 231993] New: AX: Using aria-activedescendant to set the active cell within a grid does not convey focus movement

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Oct 19 16:52:52 PDT 2021


https://bugs.webkit.org/show_bug.cgi?id=231993

            Bug ID: 231993
           Summary: AX: Using aria-activedescendant to set the active cell
                    within a grid does not convey focus movement
           Product: WebKit
           Version: Safari 15
          Hardware: Mac (Intel)
                OS: macOS 11
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Accessibility
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: joyce at quip.com
                CC: andresg_22 at apple.com,
                    webkit-bug-importer at group.apple.com

When navigating within a grid via non-VoiceOver keys (i.e. those provided by the web page), the change in active cell is not announced by VoiceOver if the element with `role="grid"` uses `aria-activedescendant` instead of explicit `element.focus()` calls on individual cell DOM nodes.

Steps to Reproduce:

1. Open the sample page at https://jscholes.github.io/basic-grid-activedescendant.html with Safari. Focus will be automatically placed on a link before the grid.
2. Activate VoiceOver.
3. Disable VoiceOver Quick Nav if necessary by pressing Left and Right Arrow together until VO announces: "Quick Nav off".
4. Move to the grid, by pressing either Tab or VO+Right Arrow. VO will announce the grid name, role and size, as well as the value of the first cell: "Hello".
5. Move to the second cell on the first and only row, by pressing the Right Arrow key without modifiers.

Expected Behavior:

Since `aria-activedescendant` can be used to manage focus (https://www.w3.org/TR/wai-aria-1.2/#aria-activedescendant), VoiceOver should announce the change in active cell, specifically by conveying the text of the new active cell ("World") and the coordinates of the new active cell ("Column 2 of 2").

Actual Behavior:

VoiceOver doesn't speak or otherwise indicate the change.

------------------------------------------------------------

Other notes which may be helpful:

* Following the same repro steps in Google Chrome 94.0.4606.81, with the same version of macOS (11.6) results in the output listed in the "Expected Behavior" section. That is, users will hear: "World. Column 2 of 2".

* While users can navigate the grid using VoiceOver-specific keys (e.g. VO+Right Arrow to move to the next column), this is not adequate for web applications which rely on users operating the grid with key handlers provided by the webpage, e.g. to load data on demand in large grids.

* While navigating the grid using VoiceOver-specific keys in Safari or Chrome, the VoiceOver hint text consistently indicates that the user is "currently on a text element inside a cell". However, when the grid initially receives focus, or when navigating via page-provided keys in Google Chrome rather than VoiceOver-specific ones, the hint text indicates the role of the current element as a "cell" directly. This may or may not have something to do with the bug being reported.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20211019/a127ff3d/attachment.htm>


More information about the webkit-unassigned mailing list