Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 37fb4cab56c56fdc577d16df977806c62d7471dd
      
https://github.com/WebKit/WebKit/commit/37fb4cab56c56fdc577d16df977806c62d7471dd
  Author: Tyler Wilcock <[email protected]>
  Date:   2025-12-02 (Tue, 02 Dec 2025)

  Changed paths:
    A LayoutTests/accessibility/aria-owns-text-stitching-expected.txt
    A LayoutTests/accessibility/aria-owns-text-stitching.html
    M LayoutTests/platform/glib/TestExpectations
    M LayoutTests/platform/ios/TestExpectations
    A 
LayoutTests/platform/ios/accessibility/aria-owns-text-stitching-expected.txt
    M Source/WebCore/accessibility/AXCoreObject.cpp
    M Source/WebCore/accessibility/AXCoreObject.h
    M Source/WebCore/accessibility/AXObjectCache.cpp
    M Source/WebCore/accessibility/AXObjectCache.h
    M Source/WebCore/accessibility/AXStitchUtilities.cpp
    M Source/WebCore/accessibility/AXStitchUtilities.h
    M Source/WebCore/accessibility/AccessibilityNodeObject.cpp

  Log Message:
  -----------
  AX: With the AccessibilityTextStitchingEnabled feature, aria-owns does not 
break text stitch groups, causing a confusing experience
https://bugs.webkit.org/show_bug.cgi?id=303142
rdar://165444838

Reviewed by Joshua Hoffman.

We should never stitch aria-owned text. Doing so would be incorrect and cause 
ATs to output text in the wrong order.

While fixing this, I found a bug where when aria-owns is removed from an 
element, the owned element's "natural" (i.e.
DOM or render tree) parent was not informed its children were dirty. This 
commit fixes that too.

The new test, accessibility/aria-owns-text-stitching.html, serves as coverage 
for both bugs fixed in this commit.

* LayoutTests/accessibility/aria-owns-text-stitching-expected.txt: Added.
* LayoutTests/accessibility/aria-owns-text-stitching.html: Added.
* LayoutTests/platform/ios/TestExpectations:
* LayoutTests/platform/ios/accessibility/aria-owns-text-stitching-expected.txt: 
Added.
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::setDirtyStitchGroups):
(WebCore::AXObjectCache::handleAttributeChange):
(WebCore::AXObjectCache::removeRelation):
(WebCore::AXObjectCache::onLaidOutInlineContent): Deleted.
* Source/WebCore/accessibility/AXObjectCache.h:
* Source/WebCore/accessibility/AXStitchUtilities.cpp:
(WebCore::StitchingContext::StitchingContext):
(WebCore::shouldStopStitchingAt):
* Source/WebCore/accessibility/AXStitchUtilities.h:
* Source/WebCore/accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::stitchGroups const):

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



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

Reply via email to