[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