Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1a5e68c92a29757c9a63b716382ce2c54b5839c3
      
https://github.com/WebKit/WebKit/commit/1a5e68c92a29757c9a63b716382ce2c54b5839c3
  Author: Kiara Rose <[email protected]>
  Date:   2025-06-17 (Tue, 17 Jun 2025)

  Changed paths:
    M Source/WebKit/Shared/Extensions/WebExtensionEventListenerType.h
    M 
Source/WebKit/Shared/Extensions/WebExtensionEventListenerType.serialization.in
    M Source/WebKit/UIProcess/API/Cocoa/WKWebExtensionContext.mm
    M Source/WebKit/UIProcess/API/Cocoa/WKWebExtensionContextPrivate.h
    M 
Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIEventCocoa.mm
    M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionContextCocoa.mm
    M Source/WebKit/UIProcess/Extensions/WebExtensionContext.h
    M Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPITestCocoa.mm
    M Source/WebKit/WebProcess/Extensions/API/WebExtensionAPITest.h
    M Source/WebKit/WebProcess/Extensions/Interfaces/WebExtensionAPITest.idl
    M Source/WebKit/WebProcess/Extensions/WebExtensionContextProxy.h
    M Source/WebKit/WebProcess/Extensions/WebExtensionContextProxy.messages.in
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPITest.mm
    M Tools/TestWebKitAPI/cocoa/WebExtensionUtilities.h
    M Tools/TestWebKitAPI/cocoa/WebExtensionUtilities.mm

  Log Message:
  -----------
  Add new onTestStarted and onTestFinished event listeners to the browser.test 
namespace
https://bugs.webkit.org/show_bug.cgi?id=294398
rdar://152970507

Reviewed by Timothy Hatcher.

Instead of using the browser.test.onMessage event listener for bidirectional 
communication, create
new event listeners specially for reporting when a test has started and 
finished.

* Source/WebKit/Shared/Extensions/WebExtensionEventListenerType.h:
(WebKit::toAPIString):
* 
Source/WebKit/Shared/Extensions/WebExtensionEventListenerType.serialization.in:
* Source/WebKit/UIProcess/API/Cocoa/WKWebExtensionContext.mm:
(-[WKWebExtensionContext _sendTestMessage:withArgument:]):
(-[WKWebExtensionContext _sendTestStartedMessageWithArgument:]):
(-[WKWebExtensionContext _sendTestFinishedMessageWithArgument:]):

* Source/WebKit/UIProcess/API/Cocoa/WKWebExtensionContextPrivate.h:
* 
Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIEventCocoa.mm:
(WebKit::isTestEventListener):
(WebKit::WebExtensionContext::addListener):
(WebKit::WebExtensionContext::removeListener):

* Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionContextCocoa.mm:
(WebKit::WebExtensionContext::sendTestMessage):
(WebKit::WebExtensionContext::addTestMessageToQueue):
(WebKit::WebExtensionContext::sendQueuedTestMessagesIfNeeded):
(WebKit::WebExtensionContext::hasTestEventListeners):
Update these methods to handle testOnStarted and testOnFinished messages.

(WebKit::WebExtensionContext::flushTestMessageQueueIfNeeded): Deleted. Renamed.

* Source/WebKit/UIProcess/Extensions/WebExtensionContext.h:
(WebKit::WebExtensionContext::hasTestMessageEventListeners): Deleted.

* Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPITestCocoa.mm:
(WebKit::WebExtensionAPITest::onTestStarted):
(WebKit::WebExtensionAPITest::onTestFinished):
Create new event listeners.

(WebKit::WebExtensionContextProxy::dispatchTestMessageEvent):
* Source/WebKit/WebProcess/Extensions/API/WebExtensionAPITest.h:
* Source/WebKit/WebProcess/Extensions/Interfaces/WebExtensionAPITest.idl:
* Source/WebKit/WebProcess/Extensions/WebExtensionContextProxy.h:
* Source/WebKit/WebProcess/Extensions/WebExtensionContextProxy.messages.in:
Pass the event type so we can know which event listener to call for the message.

* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPITest.mm:
(TestWebKitAPI::TEST(WKWebExtensionAPITest, TestStartedEvent)):
(TestWebKitAPI::TEST(WKWebExtensionAPITest, TestFinishedEvent)):
Add new tests.

* Tools/TestWebKitAPI/cocoa/WebExtensionUtilities.h:
* Tools/TestWebKitAPI/cocoa/WebExtensionUtilities.mm:
(-[TestWebExtensionManager sendTestStartedMessageWithArgument:]):
(-[TestWebExtensionManager sendTestFinishedMessageWithArgument:]):

Canonical link: https://commits.webkit.org/296322@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to