[webkit-changes] [WebKit/WebKit] f1ec9a: Prepare AXObjectCache to be moved to be owned by P...

Alex Christensen noreply at github.com
Fri Jan 17 15:44:52 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f1ec9aeef00eb1bcfd4242fba8e749903c6a1076
      https://github.com/WebKit/WebKit/commit/f1ec9aeef00eb1bcfd4242fba8e749903c6a1076
  Author: Alex Christensen <achristensen at apple.com>
  Date:   2025-01-17 (Fri, 17 Jan 2025)

  Changed paths:
    M Source/WebCore/accessibility/AXGeometryManager.cpp
    M Source/WebCore/accessibility/AXLogger.cpp
    M Source/WebCore/accessibility/AXObjectCache.cpp
    M Source/WebCore/accessibility/AXObjectCache.h
    M Source/WebCore/accessibility/AccessibilityObject.cpp
    M Source/WebCore/accessibility/atspi/AXObjectCacheAtspi.cpp
    M Source/WebCore/accessibility/ios/AXObjectCacheIOS.mm
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h
    M Source/WebCore/accessibility/playstation/AXObjectCachePlayStation.cpp

  Log Message:
  -----------
  Prepare AXObjectCache to be moved to be owned by Page instead of Document
https://bugs.webkit.org/show_bug.cgi?id=286118
rdar://143103591

Reviewed by Brady Eidson.

The AXObjectCache is currently owned by the main frame's Document,
but it is desired that there be one per Page even in iframe processes
with site isolation enabled.  That means that we will need to make
an AXObjectCache when there is no main frame Document in the current
process.  To prepare for that, make the Document pointer a WeakPtr
instead of a WeakRef.

* Source/WebCore/accessibility/AXGeometryManager.cpp:
(WebCore::AXGeometryManager::scheduleRenderingUpdate):
* Source/WebCore/accessibility/AXLogger.cpp:
(WebCore::operator<<):
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::AXObjectCache):
(WebCore::AXObjectCache::findModalNodes):
(WebCore::AXObjectCache::updateCurrentModalNode):
(WebCore::AXObjectCache::rootObject):
(WebCore::AXObjectCache::setIsolatedTreeRoot):
(WebCore::AXObjectCache::handleMenuOpened):
(WebCore::AXObjectCache::handleLiveRegionCreated):
(WebCore::AXObjectCache::notificationPostTimerFired):
(WebCore::AXObjectCache::handleMenuItemSelected):
(WebCore::AXObjectCache::onPopoverToggle):
(WebCore::AXObjectCache::handleAriaExpandedChange):
(WebCore::AXObjectCache::handleLabelChanged):
(WebCore::AXObjectCache::protectedDocument const):
(WebCore::AXObjectCache::characterOffsetForPoint):
(WebCore::AXObjectCache::performDeferredCacheUpdate):
(WebCore::AXObjectCache::rootWebArea):
(WebCore::AXObjectCache::treeData):
(WebCore::AXObjectCache::updateRelationsIfNeeded):
(WebCore::AXObjectCache::addRelation):
* Source/WebCore/accessibility/AXObjectCache.h:
* Source/WebCore/accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::detachRemoteParts):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::createEmpty):
(WebCore::AXIsolatedTree::create):
(WebCore::AXIsolatedTree::updateRootScreenRelativePosition):

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



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


More information about the webkit-changes mailing list