Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 38398649280b12506c8e9423f05bd6e0c3861226
https://github.com/WebKit/WebKit/commit/38398649280b12506c8e9423f05bd6e0c3861226
Author: Joshua Hoffman <[email protected]>
Date: 2023-10-27 (Fri, 27 Oct 2023)
Changed paths:
M Source/WebCore/page/ContextMenuController.cpp
M Source/WebCore/page/Page.cpp
M Source/WebCore/page/Page.h
M Source/WebKit/WebProcess/WebPage/WebPage.cpp
Log Message:
-----------
AX: Sometimes unable to see play/pause animation context menu item when
setting is toggled
https://bugs.webkit.org/show_bug.cgi?id=263735
rdar://117215059
Reviewed by Tyler Wilcock.
When deciding whether to add the "Play/Pause all animations" or "Play/Pause
animation" context menu item, we had previously
used a softlink to reference _AXSReduceMotionAutoplayAnimatedImagesEnabled. The
issue with using this from the web content
process, however, is that distributed notifications are not permitted as per
the sandbox, so updates to this setting were
not reaching that process.
To resolve this, this patch now piggybacks onto our existing cross-process
update for the animation setting using the
AccessibilityPreferencesChanged notification and
WebPage::updateImageAnimationEnabled. A new flag,
m_systemAllowsAnimationControls,
now maintains the state of this setting, and allows the Page to have an
up-to-date view of the setting without relying on the
softlink.
* Source/WebCore/page/ContextMenuController.cpp:
(WebCore::ContextMenuController::populate):
* Source/WebCore/page/Page.cpp:
(WebCore::Page::setSystemAllowsAnimationControls):
* Source/WebCore/page/Page.h:
(WebCore::Page::systemAllowsAnimationControls const):
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updateImageAnimationEnabled):
Canonical link: https://commits.webkit.org/269878@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes