Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: d084dfdc80b668ae9b7ae5c185e1f74fd6cfe52e
https://github.com/WebKit/WebKit/commit/d084dfdc80b668ae9b7ae5c185e1f74fd6cfe52e
Author: Joshua Hoffman <[email protected]>
Date: 2023-11-15 (Wed, 15 Nov 2023)
Changed paths:
A LayoutTests/accessibility/mac/widget-visibility-expected.txt
A LayoutTests/accessibility/mac/widget-visibility.html
M LayoutTests/platform/mac-wk1/TestExpectations
M Source/WebCore/accessibility/AXCoreObject.h
M Source/WebCore/accessibility/AXLogger.cpp
M Source/WebCore/accessibility/AXObjectCache.cpp
M Source/WebCore/accessibility/AXObjectCache.h
M Source/WebCore/accessibility/AccessibilityObject.h
M Source/WebCore/accessibility/AccessibilityRenderObject.h
M Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp
M Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h
M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp
M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h
M Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm
M Source/WebCore/rendering/RenderWidget.cpp
Log Message:
-----------
AX: Move isMatchingPlugin off of the main thread
https://bugs.webkit.org/show_bug.cgi?id=264262
rdar://problem/118001876
Reviewed by Tyler Wilcock.
The attribute isMatchingPlugin currently hits the main thread every time it is
requested, so in our efforts
to move all properties to the AX thread, we need to address this case. To
calculate this on the AX thread,
this patch caches a new property: isPlugin. We also update the cached property
of IsVisible via the
AXObject cache as necessary.
The added test confirms that the cached value for isVisible is updated when the
widget is shown or
hidden as the style of the embed element changes.
* LayoutTests/accessibility/mac/widget-visibility-expected.txt: Added.
* LayoutTests/accessibility/mac/widget-visibility.html: Added.
* LayoutTests/platform/mac-wk1/TestExpectations:
* Source/WebCore/accessibility/AXCoreObject.h:
* Source/WebCore/accessibility/AXLogger.cpp:
(WebCore::operator<<):
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::updateIsolatedTree):
(WebCore::AXObjectCache::onWidgetVisibilityChanged):
* Source/WebCore/accessibility/AXObjectCache.h:
(WebCore::AXObjectCache::onWidgetVisibilityChanged):
* Source/WebCore/accessibility/AccessibilityObject.h:
* Source/WebCore/accessibility/AccessibilityRenderObject.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeProperties):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::updateNodeProperties):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h:
* Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(isMatchingPlugin):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
* Source/WebCore/rendering/RenderWidget.cpp:
(WebCore::RenderWidget::setWidget):
(WebCore::RenderWidget::styleDidChange):
Canonical link: https://commits.webkit.org/270785@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes