[Webkit-unassigned] [Bug 227906] New: AX: nested role="presentation" elements break role="tree" behavior
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Tue Jul 13 08:46:28 PDT 2021
https://bugs.webkit.org/show_bug.cgi?id=227906
Bug ID: 227906
Summary: AX: nested role="presentation" elements break
role="tree" behavior
Product: WebKit
Version: Safari 14
Hardware: All
OS: macOS 11
Status: NEW
Severity: Normal
Priority: P2
Component: Accessibility
Assignee: webkit-unassigned at lists.webkit.org
Reporter: srhazi at slack-corp.com
CC: webkit-bug-importer at group.apple.com
When there are 2 or more nested role="presentation" elements as direct children between role="tree" and its owned role="treeitem" elements, the tree role semantics are lost.
There are several issues in this case:
- The role="tree" element is not read by VoiceOver as if it is a "table" (losing the "Entering table" and "Leaving table" announcements)
- When navigating via VO-left and VO-right, the role="tree" element is not a distinct element; navigation switches between the individual role="treeitem" items. As such, you cannot user VO-shift-down / VO-shift-up to go into/out from the inner tree navigation, and cannot use VO-down / VO-up to navigate the leaves
- The role="treeitem" elements do not retain the treeitem semantics, so the aria-checked="true" or aria-checked="false" states are not announced
A case showing the differences can be found at this codepen URL: https://codepen.io/sufianrhazi/pen/zYwoaNb -- trees with nesting 3 and 2 have navigational differences and do not announce "checked" / "unchecked", the trees with nesting 1 and 0 behave as expected.
Note: this reproduction case is simplified to use only one level of role="treeitem" elements, with no role="group" grouping.
Reproduced on Safari Version 14.1.1 (16611.2.7.1.4) with MacOS 11.4.
In other browsers on MacOS:
Chrome Version 91.0.4472.114 on MacOS 11.4 behaves as expected:
* Retains the tree semantics of the role="tree" element
* The "Entering table" / "Leaving table" announcement is made
* Tree is treated as a single VO-left/VO-right item
* Tree can be entered/exited via VO-shift-down/VO-shift-up
* When entered can be navigated via VO-down/VO-up, and the aria-checked="true"/aria-checked="false" states on role="treeitem" elements are announced and disabled states are announced
* When navigated via up/down arrow keys, the aria-checked states on role="treeitem" elements are announced
Firefox Version 90.0 on MacOS 11.4 behaves mostly as expected, except for aria-checked announcement:
* Retains the tree semantics of the role="tree" element
* The "Entering table" / "Leaving table" announcement is made
* Tree is treated as a single VO-left/VO-right item
* Tree can be entered/exited via VO-shift-down/VO-shift-up
* When entered can be navigated via VO-down/VO-up, and the aria-checked="true"/aria-checked="false" states on role="treeitem" elements are NOT announced but disabled states are announced
* When navigated via up/down arrow keys, the aria-checked states on role="treeitem" elements are NOT announced
--
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/20210713/81a50940/attachment.htm>
More information about the webkit-unassigned
mailing list