[webkit-changes] [WebKit/WebKit] 3afbb0: AX: Non-group and non-tree-item children of role="...

Tyler Wilcock noreply at github.com
Sun Sep 24 21:22:08 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3afbb0ed02b1ec0ffcaa5a9fadda1198ceb5dd2f
      https://github.com/WebKit/WebKit/commit/3afbb0ed02b1ec0ffcaa5a9fadda1198ceb5dd2f
  Author: Tyler Wilcock <tyler_w at apple.com>
  Date:   2023-09-24 (Sun, 24 Sep 2023)

  Changed paths:
    M LayoutTests/accessibility/mac/tree-properties-update-after-dynamic-change-expected.txt
    M LayoutTests/accessibility/mac/tree-properties-update-after-dynamic-change.html
    M Source/WebCore/accessibility/AXCoreObject.cpp
    M Source/WebCore/accessibility/AXCoreObject.h
    M Source/WebCore/accessibility/AccessibilityObject.cpp
    M Source/WebCore/accessibility/AccessibilityObject.h
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h

  Log Message:
  -----------
  AX: Non-group and non-tree-item children of role="treeitem"s become stale after dynamic changes
https://bugs.webkit.org/show_bug.cgi?id=262002
rdar://problem/115936550

Reviewed by Chris Fleizach.

We never updated AXPropertyName::ARIATreeItemContent, so it got stale after dynamic changes,
resulting in missing content for AT users. We resolve this by removing the property entirely,
since the implementation can be fulfilled entirely by existing AXCoreObject functionality,
and a property that doesn't exist cannot be stale.

This patch also moves hasAttributesRequiredForInclusion() out of AXCoreObject as it is only
required by AccessibilityObject and its subclasses.

Testcase added to accessibility/mac/tree-properties-update-after-dynamic-change.html.

* LayoutTests/accessibility/mac/tree-properties-update-after-dynamic-change-expected.txt:
* LayoutTests/accessibility/mac/tree-properties-update-after-dynamic-change.html:
* Source/WebCore/accessibility/AXCoreObject.cpp:
(WebCore::AXCoreObject::ariaTreeItemContent):
* Source/WebCore/accessibility/AXCoreObject.h:
* Source/WebCore/accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::ariaTreeItemContent): Deleted.
* Source/WebCore/accessibility/AccessibilityObject.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeProperties):
(WebCore::AXIsolatedObject::hasAttributesRequiredForInclusion const): Deleted.
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::updateNodeProperties):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h:

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




More information about the webkit-changes mailing list