Skip to content

Conversation

@minorninth
Copy link
Contributor

@minorninth minorninth commented Jan 23, 2026

000c765

AX: Split InjectedBundle/AccessibilityUIElement into subclasses
https://bugs.webkit.org/show_bug.cgi?id=306085
rdar://168724525

Reviewed by Tyler Wilcock.

I'd like to experiment with the idea of letting some layout tests opt
into a different subclass of InjectedBundle/AccessibilityUIElement,
for better site isolation tests.

To do this cleanly, this change first refactors the different platform
implementations of AccessibilityUIElement into subclasses rather than
different implementations of the same header.

It also reduces the number of platform-specific guards, which I think helps readability.

* Tools/TestRunnerShared/Bindings/JSWrapper.cpp:
* Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
* Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* Tools/WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp:
* Tools/WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.h: Added.
* Tools/WebKitTestRunner/InjectedBundle/cocoa/AccessibilityCommonCocoa.mm:
* Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.h: Added.
* Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
* Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.h: Copied from Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h.
* Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
* Tools/WebKitTestRunner/InjectedBundle/playstation/AccessibilityUIElementPlayStation.cpp:
* Tools/WebKitTestRunner/InjectedBundle/playstation/AccessibilityUIElementPlayStation.h: Added.
* Tools/WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp:
* Tools/WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.h: Added.

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

3c865e5

Misc iOS, visionOS, tvOS & watchOS macOS Linux Windows
✅ 🧪 style ✅ 🛠 ios ✅ 🛠 mac ✅ 🛠 wpe ✅ 🛠 win
✅ 🧪 bindings ✅ 🛠 ios-sim ✅ 🛠 mac-AS-debug ✅ 🧪 wpe-wk2 ❌ 🧪 win-tests
✅ 🧪 webkitperl ✅ 🧪 ios-wk2 ✅ 🧪 api-mac ✅ 🧪 api-wpe
✅ 🧪 ios-wk2-wpt ✅ 🧪 api-mac-debug ✅ 🛠 wpe-cairo-libwebrtc
✅ 🧪 api-ios ✅ 🧪 mac-wk1 ✅ 🛠 gtk
✅ 🛠 vision ✅ 🧪 mac-wk2 ✅ 🧪 gtk-wk2
✅ 🛠 vision-sim ✅ 🧪 mac-AS-debug-wk2 ✅ 🧪 api-gtk
✅ 🛠 🧪 merge ✅ 🧪 vision-wk2 ✅ 🧪 mac-wk2-stress ✅ 🛠 playstation
✅ 🛠 tv ✅ 🧪 mac-intel-wk2
✅ 🛠 tv-sim
✅ 🛠 watch
✅ 🛠 watch-sim

@minorninth minorninth added the Accessibility For bugs related to accessibility. label Jan 23, 2026
Copy link
Contributor

@twilco twilco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a really nice cleanup!

@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth removed the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth force-pushed the eng/AX-Split-InjectedBundle-AccessibilityUIElement-into-subclasses branch from 6246fdb to 46c2cca Compare January 23, 2026 04:42
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth removed the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth force-pushed the eng/AX-Split-InjectedBundle-AccessibilityUIElement-into-subclasses branch from 46c2cca to 25b7a43 Compare January 23, 2026 06:16
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth removed the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth force-pushed the eng/AX-Split-InjectedBundle-AccessibilityUIElement-into-subclasses branch from 25b7a43 to b1ced95 Compare January 23, 2026 07:04
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth removed the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth force-pushed the eng/AX-Split-InjectedBundle-AccessibilityUIElement-into-subclasses branch from b1ced95 to 5fb79ba Compare January 23, 2026 16:06
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth removed the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth force-pushed the eng/AX-Split-InjectedBundle-AccessibilityUIElement-into-subclasses branch from 5fb79ba to 76e1588 Compare January 23, 2026 18:39
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth removed the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth force-pushed the eng/AX-Split-InjectedBundle-AccessibilityUIElement-into-subclasses branch from 76e1588 to 7fc54b6 Compare January 23, 2026 21:11
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth removed the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth force-pushed the eng/AX-Split-InjectedBundle-AccessibilityUIElement-into-subclasses branch from 7fc54b6 to 95db869 Compare January 23, 2026 21:50
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth removed the merging-blocked Applied to prevent a change from being merged label Jan 23, 2026
@minorninth minorninth force-pushed the eng/AX-Split-InjectedBundle-AccessibilityUIElement-into-subclasses branch from 95db869 to 7caa02a Compare January 23, 2026 22:58
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Jan 24, 2026
@minorninth minorninth removed the merging-blocked Applied to prevent a change from being merged label Jan 24, 2026
@minorninth minorninth force-pushed the eng/AX-Split-InjectedBundle-AccessibilityUIElement-into-subclasses branch from 7caa02a to c3169c8 Compare January 24, 2026 23:31
@minorninth minorninth force-pushed the eng/AX-Split-InjectedBundle-AccessibilityUIElement-into-subclasses branch from c3169c8 to 3c865e5 Compare January 26, 2026 03:42
@minorninth minorninth added the merge-queue Applied to send a pull request to merge-queue label Jan 26, 2026
https://bugs.webkit.org/show_bug.cgi?id=306085
rdar://168724525

Reviewed by Tyler Wilcock.

I'd like to experiment with the idea of letting some layout tests opt
into a different subclass of InjectedBundle/AccessibilityUIElement,
for better site isolation tests.

To do this cleanly, this change first refactors the different platform
implementations of AccessibilityUIElement into subclasses rather than
different implementations of the same header.

It also reduces the number of platform-specific guards, which I think helps readability.

* Tools/TestRunnerShared/Bindings/JSWrapper.cpp:
* Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
* Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* Tools/WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp:
* Tools/WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.h: Added.
* Tools/WebKitTestRunner/InjectedBundle/cocoa/AccessibilityCommonCocoa.mm:
* Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.h: Added.
* Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
* Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.h: Copied from Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h.
* Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
* Tools/WebKitTestRunner/InjectedBundle/playstation/AccessibilityUIElementPlayStation.cpp:
* Tools/WebKitTestRunner/InjectedBundle/playstation/AccessibilityUIElementPlayStation.h: Added.
* Tools/WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp:
* Tools/WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.h: Added.

Canonical link: https://commits.webkit.org/306205@main
@webkit-commit-queue webkit-commit-queue force-pushed the eng/AX-Split-InjectedBundle-AccessibilityUIElement-into-subclasses branch from 3c865e5 to 000c765 Compare January 26, 2026 16:18
@webkit-commit-queue
Copy link
Collaborator

Committed 306205@main (000c765): https://commits.webkit.org/306205@main

Reviewed commits have been landed. Closing PR #57098 and removing active labels.

@webkit-commit-queue webkit-commit-queue merged commit 000c765 into WebKit:main Jan 26, 2026
@webkit-commit-queue webkit-commit-queue removed the merge-queue Applied to send a pull request to merge-queue label Jan 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Accessibility For bugs related to accessibility.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants