[webkit-changes] [WebKit/WebKit] 5b2530: Add support for the Web Extension commands API and...
Timothy Hatcher
noreply at github.com
Fri Nov 10 04:05:15 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 5b25309d1e6f03442f6e5a8638f43844958c0da5
https://github.com/WebKit/WebKit/commit/5b25309d1e6f03442f6e5a8638f43844958c0da5
Author: Timothy Hatcher <timothy at apple.com>
Date: 2023-11-10 (Fri, 10 Nov 2023)
Changed paths:
M Source/WebKit/DerivedSources-input.xcfilelist
M Source/WebKit/DerivedSources-output.xcfilelist
M Source/WebKit/DerivedSources.make
M Source/WebKit/Scripts/webkit/messages.py
A Source/WebKit/Shared/Extensions/WebExtensionCommandParameters.h
A Source/WebKit/Shared/Extensions/WebExtensionCommandParameters.serialization.in
M Source/WebKit/Shared/Extensions/WebExtensionEventListenerType.h
M Source/WebKit/Shared/Extensions/WebExtensionEventListenerType.serialization.in
A Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPICommandsCocoa.mm
M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionCocoa.mm
M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionCommandCocoa.mm
M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionContextCocoa.mm
M Source/WebKit/UIProcess/Extensions/WebExtension.h
M Source/WebKit/UIProcess/Extensions/WebExtensionCommand.cpp
M Source/WebKit/UIProcess/Extensions/WebExtensionCommand.h
M Source/WebKit/UIProcess/Extensions/WebExtensionContext.h
M Source/WebKit/UIProcess/Extensions/WebExtensionContext.messages.in
M Source/WebKit/WebKit.xcodeproj/project.pbxproj
A Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPICommandsCocoa.mm
M Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPINamespaceCocoa.mm
A Source/WebKit/WebProcess/Extensions/API/WebExtensionAPICommands.h
M Source/WebKit/WebProcess/Extensions/API/WebExtensionAPINamespace.h
A Source/WebKit/WebProcess/Extensions/Interfaces/WebExtensionAPICommands.idl
M Source/WebKit/WebProcess/Extensions/Interfaces/WebExtensionAPINamespace.idl
M Source/WebKit/WebProcess/Extensions/WebExtensionContextProxy.h
M Source/WebKit/WebProcess/Extensions/WebExtensionContextProxy.messages.in
M Tools/TestWebKitAPI/SourcesCocoa.txt
M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtension.mm
A Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPICommands.mm
M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionContext.mm
Log Message:
-----------
Add support for the Web Extension commands API and events.
https://bugs.webkit.org/show_bug.cgi?id=260157
rdar://problem/114823250
Reviewed by Brent Fulgham.
* Source/WebKit/DerivedSources-input.xcfilelist:
* Source/WebKit/DerivedSources-output.xcfilelist:
* Source/WebKit/DerivedSources.make:
* Source/WebKit/Scripts/webkit/messages.py:
(types_that_cannot_be_forward_declared):
* Source/WebKit/Shared/Extensions/WebExtensionCommandParameters.h: Added.
* Source/WebKit/Shared/Extensions/WebExtensionCommandParameters.serialization.in: Added.
* Source/WebKit/Shared/Extensions/WebExtensionEventListenerType.h: Added CommandsOnChanged and sorted.
* Source/WebKit/Shared/Extensions/WebExtensionEventListenerType.serialization.in: Ditto.
* Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPICommandsCocoa.mm: Added.
(WebKit::WebExtensionContext::commandsGetAll):
(WebKit::WebExtensionContext::fireCommandEventIfNeeded):
(WebKit::WebExtensionContext::fireCommandChangedEventIfNeeded):
* Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionCocoa.mm:
(WebKit::WebExtension::hasAction): Added.
(WebKit::WebExtension::hasBrowserAction): Added.
(WebKit::WebExtension::hasPageAction): Added.
(WebKit::WebExtension::populateCommandsIfNeeded): Added action command.
* Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionCommandCocoa.mm:
(WebKit::WebExtensionCommand::dispatchChangedEventSoonIfNeeded): Added.
(WebKit::WebExtensionCommand::setActivationKey): Call dispatchChangedEventSoonIfNeeded().
* Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionContextCocoa.mm:
(WebKit::WebExtensionContext::performCommand): Call performAction() and fireCommandEventIfNeeded().
* Source/WebKit/UIProcess/Extensions/WebExtension.h:
* Source/WebKit/UIProcess/Extensions/WebExtensionCommand.cpp:
(WebKit::WebExtensionCommand::isActionCommand const): Added.
(WebKit::WebExtensionCommand::parameters const): Added.
* Source/WebKit/UIProcess/Extensions/WebExtensionCommand.h:
(WebKit::WebExtensionCommand::setModifierFlags):
* Source/WebKit/UIProcess/Extensions/WebExtensionContext.h:
* Source/WebKit/UIProcess/Extensions/WebExtensionContext.messages.in:
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPICommandsCocoa.mm: Added.
(WebKit::toAPI):
(WebKit::WebExtensionAPICommands::getAll):
(WebKit::WebExtensionAPICommands::onCommand):
(WebKit::WebExtensionAPICommands::onChanged):
(WebKit::WebExtensionContextProxy::dispatchCommandsCommandEvent):
(WebKit::WebExtensionContextProxy::dispatchCommandsChangedEvent):
* Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPINamespaceCocoa.mm:
(WebKit::WebExtensionAPINamespace::isPropertyAllowed):
(WebKit::WebExtensionAPINamespace::commands):
* Source/WebKit/WebProcess/Extensions/API/WebExtensionAPICommands.h: Added.
* Source/WebKit/WebProcess/Extensions/API/WebExtensionAPINamespace.h:
* Source/WebKit/WebProcess/Extensions/Interfaces/WebExtensionAPICommands.idl: Added.
* Source/WebKit/WebProcess/Extensions/Interfaces/WebExtensionAPINamespace.idl: Added commands.
* Source/WebKit/WebProcess/Extensions/WebExtensionContextProxy.h:
* Source/WebKit/WebProcess/Extensions/WebExtensionContextProxy.messages.in:
* Tools/TestWebKitAPI/SourcesCocoa.txt:
* Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtension.mm:
(TestWebKitAPI::TEST):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPICommands.mm: Added.
(TestWebKitAPI::TEST):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionContext.mm:
(TestWebKitAPI::TEST):
Canonical link: https://commits.webkit.org/270523@main
More information about the webkit-changes
mailing list