Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 250a3ab845c5672c4579c6fcc406ffdf5d800c7d
      
https://github.com/WebKit/WebKit/commit/250a3ab845c5672c4579c6fcc406ffdf5d800c7d
  Author: Tyler Wilcock <[email protected]>
  Date:   2025-07-23 (Wed, 23 Jul 2025)

  Changed paths:
    A 
LayoutTests/accessibility/mac/visible-content-search-in-iframe-expected.txt
    A LayoutTests/accessibility/mac/visible-content-search-in-iframe.html
    A 
LayoutTests/accessibility/mac/visible-content-search-in-scrolled-iframe-expected.txt
    A 
LayoutTests/accessibility/mac/visible-content-search-in-scrolled-iframe.html
    A 
LayoutTests/platform/mac-wk1/accessibility/mac/visible-content-search-in-iframe-expected.txt
    M LayoutTests/resources/accessibility-helper.js
    M Source/WebCore/accessibility/AccessibilityObject.cpp
    M Source/WebCore/accessibility/AccessibilityObject.h
    M Source/WebCore/accessibility/AccessibilityScrollView.cpp
    M Source/WebCore/accessibility/AccessibilityScrollView.h

  Log Message:
  -----------
  AX: Voice Control number/name overlays don't label content in iframe
https://bugs.webkit.org/show_bug.cgi?id=285188
rdar://142096466

Reviewed by Joshua Hoffman.

This happened for two reasons:

  1. AccessibilityScrollView did not implement boundingBoxRect(), which 
AccessibilityObject::isOnScreen relied on.
     It did implement elementRect(), so implement boundingBoxRect() in terms of 
elementRect. In the future, we should
     consider only having one method to return an element's rect.

  2. The rect of elements within non-root scrollables (like iframes) needs to 
be normalized to the root view. Otherwise,
     the rect would be relative to the containing scrollable, e.g. a button at 
x=8 y=8 in an iframe that is x=300 y=300
     should be considered to have a position of x=308 y=308, but this wasn't 
happening, so we were considering the button
     to not be visible.

Two new tests added.

* LayoutTests/accessibility/mac/visible-content-search-in-iframe-expected.txt: 
Added.
* LayoutTests/accessibility/mac/visible-content-search-in-iframe.html: Added.
* 
LayoutTests/accessibility/mac/visible-content-search-in-scrolled-iframe-expected.txt:
 Added.
* LayoutTests/accessibility/mac/visible-content-search-in-scrolled-iframe.html: 
Added.
* LayoutTests/resources/accessibility-helper.js:
(dumpAXSearchTraversal):
* Source/WebCore/accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::dbgInternal const):
(WebCore::AccessibilityObject::isOnScreen const):
* Source/WebCore/accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::extraDebugInfo const):
* Source/WebCore/accessibility/AccessibilityScrollView.cpp:
(WebCore::AccessibilityScrollView::ownerDebugDescription const):
* Source/WebCore/accessibility/AccessibilityScrollView.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to