[webkit-changes] [WebKit/WebKit] e8027f: Defer AX object cache update as an event loop task...
Ryosuke Niwa
noreply at github.com
Mon May 8 15:46:21 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e8027f0de5396f635ddfaf6b7ad8b38e05bc8fdd
https://github.com/WebKit/WebKit/commit/e8027f0de5396f635ddfaf6b7ad8b38e05bc8fdd
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2023-05-08 (Mon, 08 May 2023)
Changed paths:
M LayoutTests/accessibility/mac/input-type-change-crash-expected.txt
M LayoutTests/accessibility/mac/tab-focus-post-notification.html
M LayoutTests/accessibility/mac/textbox-role-reports-notifications.html
M LayoutTests/accessibility/nested-textareas-value-changed-notifications-expected.txt
M Source/WebCore/dom/Document.cpp
M Source/WebCore/dom/Document.h
M Source/WebCore/page/LocalFrameView.cpp
M Source/WebCore/testing/Internals.cpp
Log Message:
-----------
Defer AX object cache update as an event loop task instead of a post layout task
https://bugs.webkit.org/show_bug.cgi?id=256403
Reviewed by Antti Koivisto.
Defer accessibility object cache updates until an event loop task instead of running
them as a post layout task since they can trigger synchronous author script execution.
* LayoutTests/accessibility/mac/input-type-change-crash-expected.txt: Rebaselined.
* LayoutTests/accessibility/mac/tab-focus-post-notification.html: Wait for rAF between
each tabbing so that AX objects have a chance to update themselves.
* LayoutTests/accessibility/mac/textbox-role-reports-notifications.html: Manually call
updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks to flush AX cache updates.
* LayoutTests/accessibility/nested-textareas-value-changed-notifications-expected.txt:
Rebaselined.
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::scheduleDeferredAXObjectCacheUpdate):
(WebCore::Document::flushDeferredAXObjectCacheUpdate):
* Source/WebCore/dom/Document.h:
* Source/WebCore/page/LocalFrameView.cpp:
(WebCore::LocalFrameView::performPostLayoutTasks):
* Source/WebCore/testing/Internals.cpp:
(WebCore::Internals::updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks):
Manually flush the pending AX object cache updates.
Canonical link: https://commits.webkit.org/263832@main
More information about the webkit-changes
mailing list