Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: da85a3bfd71bd13873ae8a43a09774ed89c23d62
https://github.com/WebKit/WebKit/commit/da85a3bfd71bd13873ae8a43a09774ed89c23d62
Author: Tyler Wilcock <[email protected]>
Date: 2026-07-14 (Tue, 14 Jul 2026)
Changed paths:
A
LayoutTests/accessibility/treeitem-hierarchical-level-in-plain-list-expected.txt
A LayoutTests/accessibility/treeitem-hierarchical-level-in-plain-list.html
M Source/WebCore/accessibility/AXCoreObject.cpp
M Source/WebCore/accessibility/AXCoreObject.h
M Source/WebCore/accessibility/AXLogger.cpp
M Source/WebCore/accessibility/AccessibilityObject.h
M Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h
M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp
M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h
Log Message:
-----------
AX: REGRESSION(294788@main): Voice Control/inspector report the wrong
tree-item level for a treeitem nested in a plain <ul>
https://bugs.webkit.org/show_bug.cgi?id=319267
rdar://180455904
Reviewed by Dominic Mazzoni.
294788@main (bc34242b2e93) moved hierarchicalLevel() to AXCoreObject and, in
doing
so, changed the tree-level ancestor walk from the authored ARIA role
(ariaRoleAttribute()) to the computed role(). A plain <ul> whose only child is a
role="treeitem" is demoted to a generic Group role by the list heuristic, so the
walk began counting it as a grouping level, reporting level 2 instead of 1.
Per the ARIA tree pattern, only an explicitly-authored role="group" establishes
a
grouping level. Introduce AXCoreObject::hasExplicitGroupRole() (cached on the
isolated tree) and count only those ancestors, matching the pre-294788 behavior
and other browsers.
*
LayoutTests/accessibility/treeitem-hierarchical-level-in-plain-list-expected.txt:
Added.
* LayoutTests/accessibility/treeitem-hierarchical-level-in-plain-list.html:
Added.
* Source/WebCore/accessibility/AXCoreObject.cpp:
(WebCore::AXCoreObject::hierarchicalLevel const):
* Source/WebCore/accessibility/AXCoreObject.h:
* Source/WebCore/accessibility/AXLogger.cpp:
(WebCore::operator<<):
* Source/WebCore/accessibility/AccessibilityObject.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::createIsolatedObjectData):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h:
Canonical link: https://commits.webkit.org/317178@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications