[webkit-changes] [WebKit/WebKit] ae0dcb: y nAX: Move selectedTextRange off of the main-thread
Joshua Hoffman
noreply at github.com
Tue Nov 7 11:14:23 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: ae0dcb554a690c71b5b5943e4d6467f9bf40c004
https://github.com/WebKit/WebKit/commit/ae0dcb554a690c71b5b5943e4d6467f9bf40c004
Author: Joshua Hoffman <jhoffman23 at apple.com>
Date: 2023-11-07 (Tue, 07 Nov 2023)
Changed paths:
M LayoutTests/accessibility/content-editable-as-textarea.html
M LayoutTests/accessibility/textbox-role-reports-selection.html
M Source/WebCore/accessibility/AXObjectCache.cpp
M Source/WebCore/accessibility/AXObjectCache.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/AXObjectCacheMac.mm
Log Message:
-----------
y nAX: Move selectedTextRange off of the main-thread
https://bugs.webkit.org/show_bug.cgi?id=263940
rdar://117568720
Reviewed by Andres Gonzalez.
We currently use the main thread to get the selectedTextRange when in isolated tree mode. In the
effort to completely sever ITM, this should be cached to be served on the AX thread.
This patch caches that value on text input objects, and updates the property every time text
selection changes. This update is debounced to account for text selection in-progress and
minimize computation.
* LayoutTests/accessibility/content-editable-as-textarea.html:
* LayoutTests/accessibility/textbox-role-reports-selection.html:
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::AXObjectCache):
(WebCore::AXObjectCache::~AXObjectCache):
(WebCore::AXObjectCache::postTextStateChangeNotification):
(WebCore::AXObjectCache::updateIsolatedTree):
(WebCore::AXObjectCache::selectedTextRangeTimerFired):
* Source/WebCore/accessibility/AXObjectCache.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeProperties):
(WebCore::AXIsolatedObject::selectedTextRange const): Deleted.
* 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/AXObjectCacheMac.mm:
(WebCore::AXObjectCache::platformSelectedTextRangeDebounceInterval const):
Canonical link: https://commits.webkit.org/270340@main
More information about the webkit-changes
mailing list