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

Reply via email to