Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e4ad61660d18fb4c6ea566f697dc59bfa0229ae3
      
https://github.com/WebKit/WebKit/commit/e4ad61660d18fb4c6ea566f697dc59bfa0229ae3
  Author: Joshua Hoffman <jhoffma...@apple.com>
  Date:   2023-12-19 (Tue, 19 Dec 2023)

  Changed paths:
    M LayoutTests/accessibility/mac/aria-errormessage-expected.txt
    M LayoutTests/accessibility/mac/aria-errormessage.html
    M Source/WebCore/accessibility/AXObjectCache.cpp
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h

  Log Message:
  -----------
  AX: Move objectsForIds off of the main thread
https://bugs.webkit.org/show_bug.cgi?id=266608
rdar://116133586

Reviewed by Tyler Wilcock.

This patch moves objectsForIDs completely off of the main thread by eagerly
caching ignored objects that are origins/targets of relationships. This allows
all potentially requested AX objects to be served from the AX thread.

These objects are being added as unconnected in two spots: (1) when the isolated
tree is initialized and (2) when a new relation is being added.

* LayoutTests/accessibility/mac/aria-errormessage-expected.txt:
* LayoutTests/accessibility/mac/aria-errormessage.html:
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::addRelation):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::create):
(WebCore::AXIsolatedTree::objectsForIDs):
(WebCore::AXIsolatedTree::addUnconnectedNode):
(WebCore::AXIsolatedTree::removeSubtreeFromNodeMap):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h:

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


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to