Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 73910d5d194e05db6c6205688f495bd89e64b54c
https://github.com/WebKit/WebKit/commit/73910d5d194e05db6c6205688f495bd89e64b54c
Author: Tyler Wilcock <[email protected]>
Date: 2026-05-12 (Tue, 12 May 2026)
Changed paths:
M Source/WebCore/accessibility/AXCrossProcessSearch.cpp
M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp
M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h
Log Message:
-----------
AX: Avoid unnecessary main-thread dispatch and parent search wait in
cross-process search
https://bugs.webkit.org/show_bug.cgi?id=314610
rdar://176852283
Reviewed by Dominic Mazzoni.
Cache isMainFrame and siteIsolationEnabled on AXIsolatedTree so that
performSearchWithParentCoordination can short-circuit on the AX thread
without dispatching to the main thread. Previously, we always dispatched
to the main thread just to check these conditions and bail out.
Also skip waiting for the parent search when local results already
satisfy the requested limit, since the merge logic provably discards all
parent tokens in that case regardless of search direction. Cancel the
parent search context so the main-thread lambda can avoid the IPC
dispatch if it hasn't run yet.
* Source/WebCore/accessibility/AXCrossProcessSearch.cpp:
(WebCore::ParentFrameSearchContext::cancel):
(WebCore::ParentFrameSearchContext::isCancelled const):
(WebCore::performSearchWithParentCoordination):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::AXIsolatedTree):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h:
(WebCore::AXIsolatedTree::isMainFrame const):
(WebCore::AXIsolatedTree::siteIsolationEnabled const):
Canonical link: https://commits.webkit.org/313128@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications