Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 80d2bac01f0d4e09500a3560531bfa35b12f390f
      
https://github.com/WebKit/WebKit/commit/80d2bac01f0d4e09500a3560531bfa35b12f390f
  Author: Tyler Wilcock <[email protected]>
  Date:   2026-09-03 (Thu, 03 Sep 2026)

  Changed paths:
    A 
LayoutTests/accessibility/isolated-tree/mac/aria-tree-with-presentation-role-expected.txt
    A 
LayoutTests/accessibility/isolated-tree/mac/aria-tree-with-presentation-role.html
    M 
LayoutTests/accessibility/mac/aria-tree-with-presentation-role-expected.txt
    M LayoutTests/accessibility/mac/aria-tree-with-presentation-role.html
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp

  Log Message:
  -----------
  AX: Tree items nested in an authored role="group" report disclosure level 0 
with the isolated tree enabled
https://bugs.webkit.org/show_bug.cgi?id=323222
rdar://186467868

Reviewed by Dominic Mazzoni.

AXCoreObject::hierarchicalLevel() walks a tree item's ancestor chain and adds a
level for each ancestor whose hasExplicitGroupRole() is true, so that

    <ul role="tree">
      <li role="presentation">
        <span role="treeitem">Using Search</span>
        <ul role="group">
          <li role="treeitem">Power Search</li>

exposes AXDisclosureLevel 1 for "Power Search". With the isolated tree enabled 
it
was 0 instead.

An ARIA tree flattens to a list of rows, so the role="group" container itself is
ignored. createIsolatedObjectData() cached AXProperty::HasExplicitGroupRole only
under needsAllProperties, which is false for ignored objects, so the property 
was
never stored and AXIsolatedObject::hasExplicitGroupRole() returned the default
false for every group in the chain.

Covered by accessibility/mac/aria-tree-with-presentation-role.html, which now
passes with --accessibility-isolated-tree and continues to pass without it.

* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::createIsolatedObjectData):

Canonical link: https://commits.webkit.org/320415@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to