Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3ddf18520f0c97d18703a7ef07ed9813f18f0a5b
      
https://github.com/WebKit/WebKit/commit/3ddf18520f0c97d18703a7ef07ed9813f18f0a5b
  Author: Dominic Mazzoni <[email protected]>
  Date:   2026-10-12 (Mon, 12 Oct 2026)

  Changed paths:
    A 
LayoutTests/accessibility/mac/client/focus-changed-notification-expected.txt
    A LayoutTests/accessibility/mac/client/focus-changed-notification.html
    A 
LayoutTests/http/tests/site-isolation/accessibility/client/focus-changed-notification-in-iframe-expected.txt
    A 
LayoutTests/http/tests/site-isolation/accessibility/client/focus-changed-notification-in-iframe.html
    A 
LayoutTests/http/tests/site-isolation/accessibility/resources/iframe-with-two-text-inputs.html
    M Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm
    M Tools/WebKitTestRunner/InjectedBundle/AccessibilityController.h
    M Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp
    M Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm
    M Tools/WebKitTestRunner/TestController.cpp
    M Tools/WebKitTestRunner/TestController.h

  Log Message:
  -----------
  AX: VoiceOver does not consistently follow focus changes in iframes with site 
isolation on
https://bugs.webkit.org/show_bug.cgi?id=326906
rdar://189567901

Reviewed by Tyler Wilcock.

The fix is a simple change to WebProcess::accessibilityFocusedUIElement to 
query the
accessibility element for the focused frame rather than the main frame.

However, properly testing this required some more infrastructure. This patch 
adds
support for listening for client / native accessibility notifications from 
layout
tests, enabling a test to listen for a notification even across multiple 
processes,
and using the same client notification API that VoiceOver uses.

Tests: accessibility/mac/client/focus-changed-notification.html
       
http/tests/site-isolation/accessibility/client/focus-changed-notification-in-iframe.html

* LayoutTests/accessibility/mac/client/focus-changed-notification-expected.txt: 
Added.
* LayoutTests/accessibility/mac/client/focus-changed-notification.html: Added.
* 
LayoutTests/http/tests/site-isolation/accessibility/client/focus-changed-notification-in-iframe-expected.txt:
 Added.
* 
LayoutTests/http/tests/site-isolation/accessibility/client/focus-changed-notification-in-iframe.html:
 Added.
* 
LayoutTests/http/tests/site-isolation/accessibility/resources/iframe-with-two-text-inputs.html:
 Added.
* Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::accessibilityFocusedUIElement):
* Tools/WebKitTestRunner/InjectedBundle/AccessibilityController.h:
* Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didReceiveMessageToPage):
* Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
(WTR::AccessibilityController::addNotificationListener):
(WTR::AccessibilityController::removeNotificationListener):
(WTR::AccessibilityController::addClientNotificationListener):
(WTR::AccessibilityController::removeClientNotificationListener):
(WTR::AccessibilityController::clientNotificationReceived):
(WTR::AccessibilityController::resetToConsistentState):
* Tools/WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
* Tools/WebKitTestRunner/TestController.h:

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



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

Reply via email to