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

  Changed paths:
    A 
LayoutTests/accessibility/ios-simulator/link-with-generics-and-insertion-deletion-expected.txt
    A 
LayoutTests/accessibility/ios-simulator/link-with-generics-and-insertion-deletion.html
    M Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm

  Log Message:
  -----------
  AX: The presence of a generic, insertion, or deletion prevents links from 
being exposed as atomic accessibility elements, causing unnecessary 
accessibility tree fragmentation
https://bugs.webkit.org/show_bug.cgi?id=304223
rdar://166578178

Reviewed by Joshua Hoffman.

Whether a link is split into its descendants or treated as an atomic 
accessibility element is determined by
-[WebAccessibilityObjectWrapper containsUnnaturallySegmentedChildren]. This 
function returned true (indicating the link
should be split) whenever a generic was present, which are obviously extremely 
common and really shouldn't count as
a meaningful descendant. Links were also split when containing an insertion or 
deletion, which isn't ideal since the
content within these elements is almost always plain-text.

This commit makes this function more tolerant of generics, insertions, and 
deletions, motivated by markup from a real
page and distilled into layout test 
accessibility/ios-simulator/link-with-generics-and-insertion-deletion.html.

* 
LayoutTests/accessibility/ios-simulator/link-with-generics-and-insertion-deletion-expected.txt:
 Added.
* 
LayoutTests/accessibility/ios-simulator/link-with-generics-and-insertion-deletion.html:
 Added.
* Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper containsUnnaturallySegmentedChildren]):

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



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

Reply via email to