Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5b25309d1e6f03442f6e5a8638f43844958c0da5
      
https://github.com/WebKit/WebKit/commit/5b25309d1e6f03442f6e5a8638f43844958c0da5
  Author: Timothy Hatcher <[email protected]>
  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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to