[webkit-changes] [WebKit/WebKit] b0d7de: Add context menu items to play and pause individua...
Tyler Wilcock
noreply at github.com
Tue Jan 31 17:47:25 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: b0d7dee512450be3c01ae6196ebbbbf4cb0600a8
https://github.com/WebKit/WebKit/commit/b0d7dee512450be3c01ae6196ebbbbf4cb0600a8
Author: Tyler Wilcock <tyler_w at apple.com>
Date: 2023-01-31 (Tue, 31 Jan 2023)
Changed paths:
A LayoutTests/fast/images/mac/play-pause-individual-animation-context-menu-items-expected.txt
A LayoutTests/fast/images/mac/play-pause-individual-animation-context-menu-items.html
M LayoutTests/platform/mac/TestExpectations
M Source/WebCore/en.lproj/Localizable.strings
M Source/WebCore/page/ContextMenuController.cpp
M Source/WebCore/platform/ContextMenuItem.cpp
M Source/WebCore/platform/ContextMenuItem.h
M Source/WebCore/platform/LocalizedStrings.cpp
M Source/WebCore/platform/LocalizedStrings.h
M Source/WebCore/rendering/HitTestResult.cpp
M Source/WebCore/rendering/HitTestResult.h
M Source/WebKit/Shared/API/c/WKContextMenuItem.cpp
M Source/WebKit/Shared/API/c/WKContextMenuItemTypes.h
M Source/WebKit/Shared/API/c/WKSharedAPICast.h
M Source/WebKit/Shared/ios/GestureTypes.h
M Source/WebKit/Shared/ios/InteractionInformationAtPosition.h
M Source/WebKit/Shared/ios/InteractionInformationAtPosition.serialization.in
M Source/WebKit/UIProcess/API/Cocoa/WKMenuItemIdentifiers.mm
M Source/WebKit/UIProcess/API/Cocoa/WKMenuItemIdentifiersPrivate.h
M Source/WebKit/UIProcess/API/Cocoa/_WKActivatedElementInfo.h
M Source/WebKit/UIProcess/API/Cocoa/_WKActivatedElementInfo.mm
M Source/WebKit/UIProcess/API/Cocoa/_WKElementAction.h
M Source/WebKit/UIProcess/API/Cocoa/_WKElementAction.mm
M Source/WebKit/UIProcess/ios/WKActionSheetAssistant.mm
M Source/WebKit/UIProcess/mac/WebContextMenuProxyMac.mm
M Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm
M Source/WebKitLegacy/mac/WebView/WebHTMLView.mm
M Source/WebKitLegacy/mac/WebView/WebUIDelegatePrivate.h
Log Message:
-----------
Add context menu items to play and pause individual animations
https://bugs.webkit.org/show_bug.cgi?id=250475
rdar://problem/104137965
Reviewed by Chris Fleizach.
Expose context menu items to play all or pause all animations on the page.
See similar bug:
https://bugs.webkit.org/show_bug.cgi?id=247377 (Add context menu items to play all or pause all animations on the page)
* LayoutTests/fast/images/mac/play-pause-individual-animation-context-menu-items-expected.txt: Added.
* LayoutTests/fast/images/mac/play-pause-individual-animation-context-menu-items.html: Added.
* LayoutTests/platform/mac/TestExpectations:
Skip newly added test -- it is enabled in rdar://104134092.
* Source/WebCore/en.lproj/Localizable.strings:
* Source/WebCore/page/ContextMenuController.cpp:
(WebCore::ContextMenuController::contextMenuItemSelected):
(WebCore::ContextMenuController::populate):
(WebCore::ContextMenuController::checkOrEnableIfNeeded const):
* Source/WebCore/platform/ContextMenuItem.cpp:
(WebCore::isValidContextMenuAction):
* Source/WebCore/platform/ContextMenuItem.h:
* Source/WebCore/platform/LocalizedStrings.cpp:
(WebCore::contextMenuItemTagPlayAnimation):
(WebCore::contextMenuItemTagPauseAnimation):
* Source/WebCore/platform/LocalizedStrings.h:
* Source/WebCore/rendering/HitTestResult.cpp:
(WebCore::HitTestResult::imageElement const):
(WebCore::HitTestResult::isAnimating const):
(WebCore::HitTestResult::playAnimation const):
(WebCore::HitTestResult::pauseAnimation const):
(WebCore::HitTestResult::setAllowsAnimation const):
* Source/WebCore/rendering/HitTestResult.h:
* Source/WebKit/Shared/API/c/WKContextMenuItem.cpp:
* Source/WebKit/Shared/API/c/WKContextMenuItemTypes.h:
* Source/WebKit/Shared/API/c/WKSharedAPICast.h:
(WebKit::toAPI):
(WebKit::toImpl):
* Source/WebKit/Shared/ios/GestureTypes.h:
* Source/WebKit/Shared/ios/InteractionInformationAtPosition.h:
* Source/WebKit/Shared/ios/InteractionInformationAtPosition.serialization.in:
* Source/WebKit/UIProcess/API/Cocoa/WKMenuItemIdentifiers.mm:
* Source/WebKit/UIProcess/API/Cocoa/WKMenuItemIdentifiersPrivate.h:
* Source/WebKit/UIProcess/API/Cocoa/_WKActivatedElementInfo.h:
* Source/WebKit/UIProcess/API/Cocoa/_WKActivatedElementInfo.mm:
(-[_WKActivatedElementInfo _initWithInteractionInformationAtPosition:isUsingAlternateURLForImage:userInfo:]):
(-[_WKActivatedElementInfo isAnimating]):
(-[_WKActivatedElementInfo canShowAnimationControls]):
* Source/WebKit/UIProcess/API/Cocoa/_WKElementAction.h:
* Source/WebKit/UIProcess/API/Cocoa/_WKElementAction.mm:
(+[_WKElementAction _elementActionWithType:customTitle:assistant:]):
(+[_WKElementAction imageForElementActionType:]):
(elementActionTypeToUIActionIdentifier):
(uiActionIdentifierToElementActionType):
* Source/WebKit/UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant defaultActionsForImageSheet:]):
(-[WKActionSheetAssistant handleElementActionWithType:element:needsInteraction:]):
* Source/WebKit/UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::menuItemIdentifier):
* Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::imagePositionInformation):
(WebKit::WebPage::performActionOnElement):
* Source/WebKitLegacy/mac/WebView/WebHTMLView.mm:
(toTag):
* Source/WebKitLegacy/mac/WebView/WebUIDelegatePrivate.h:
Canonical link: https://commits.webkit.org/259654@main
More information about the webkit-changes
mailing list