Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 553a55c37606ca6bce4630ca93b72e9354d1a25d https://github.com/WebKit/WebKit/commit/553a55c37606ca6bce4630ca93b72e9354d1a25d Author: Timothy Hatcher <timo...@apple.com> Date: 2024-02-13 (Tue, 13 Feb 2024)
Changed paths: M Source/WebKit/Scripts/webkit/messages.py A Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIDevToolsPanels.mm M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionContextCocoa.mm M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionURLSchemeHandlerCocoa.mm M Source/WebKit/UIProcess/Extensions/WebExtensionContext.h M Source/WebKit/UIProcess/Extensions/WebExtensionContext.messages.in M Source/WebKit/UIProcess/Extensions/WebExtensionController.h M Source/WebKit/UIProcess/Inspector/mac/WKInspectorViewController.mm M Source/WebKit/UIProcess/WebPageProxy.h M Source/WebKit/UIProcess/WebProcessPool.cpp M Source/WebKit/WebKit.xcodeproj/project.pbxproj M Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIDevToolsCocoa.mm M Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIDevToolsExtensionPanelCocoa.mm M Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIDevToolsInspectedWindowCocoa.mm M Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIDevToolsNetworkCocoa.mm M Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIDevToolsPanelsCocoa.mm M Source/WebKit/WebProcess/Extensions/API/WebExtensionAPIDevToolsPanels.h M Source/WebKit/WebProcess/Extensions/Interfaces/WebExtensionAPIDevToolsPanels.idl M Source/WebKit/WebProcess/Extensions/WebExtensionContextProxy.h M Source/WebKit/WebProcess/Extensions/WebExtensionContextProxy.messages.in M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIDevTools.mm Log Message: ----------- Add support for creating panels in the Web Extension devtools background page. https://webkit.org/b/246485 rdar://problem/114823326 Reviewed by Jeff Miller. This adds support for browser.devtools.panels.create() and firing the onShown and onHidden events on those panels when they are shown / hidden in Web Inspector. This requires loading the devtools background page in the same process as Web Inspector, since we need to pass the window object of the new panel's frame to the onShown listeners. Added a new test that exercise this end-to-end. We also have WKInspectorExtension API tests that test this separate from the Web Extensions tests. * Source/WebKit/Scripts/webkit/messages.py: (types_that_cannot_be_forward_declared): (headers_for_type): * Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIDevToolsPanels.mm: Added. (WebKit::WebExtensionContext::devToolsPanelsCreate): * Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionContextCocoa.mm: (WebKit::WebExtensionContext::webViewConfiguration): (WebKit::WebExtensionContext::openInspectors const): (WebKit::WebExtensionContext::inspectorExtension const): (WebKit::WebExtensionContext::inspector const): (WebKit::WebExtensionContext::processes const): (WebKit::WebExtensionContext::loadInspectorBackgroundPage): (WebKit::WebExtensionContext::unloadInspectorBackgroundPage): (WebKit::WebExtensionContext::didShowInspectorExtensionPanel const): (WebKit::WebExtensionContext::didHideInspectorExtensionPanel const): * Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionURLSchemeHandlerCocoa.mm: (WebKit::WebExtensionURLSchemeHandler::platformStartTask): * Source/WebKit/UIProcess/Extensions/WebExtensionContext.h: (WebKit::WebExtensionContext::sendToProcesses const): (WebKit::WebExtensionContext::sendToProcessesForEvent const): (WebKit::WebExtensionContext::sendToProcessesForEvents const): (WebKit::WebExtensionContext::sendToContentScriptProcessesForEvent const): (WebKit::WebExtensionContext::sendToProcesses): Deleted. (WebKit::WebExtensionContext::sendToProcessesForEvent): Deleted. (WebKit::WebExtensionContext::sendToProcessesForEvents): Deleted. (WebKit::WebExtensionContext::sendToContentScriptProcessesForEvent): Deleted. * Source/WebKit/UIProcess/Extensions/WebExtensionContext.messages.in: * Source/WebKit/UIProcess/Extensions/WebExtensionController.h: * Source/WebKit/UIProcess/Inspector/mac/WKInspectorViewController.mm: (-[WKInspectorViewController webViewConfiguration]): * Source/WebKit/UIProcess/WebPageProxy.h: * Source/WebKit/UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::processForNavigationInternal): * Source/WebKit/WebKit.xcodeproj/project.pbxproj: * Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIDevToolsCocoa.mm: * Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIDevToolsExtensionPanelCocoa.mm: (WebKit::WebExtensionAPIDevToolsExtensionPanel::onHidden): (WebKit::WebExtensionContextProxy::dispatchDevToolsExtensionPanelShownEvent): (WebKit::WebExtensionContextProxy::dispatchDevToolsExtensionPanelHiddenEvent): * Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIDevToolsInspectedWindowCocoa.mm: * Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIDevToolsNetworkCocoa.mm: * Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIDevToolsPanelsCocoa.mm: (WebKit::WebExtensionAPIDevToolsPanels::extensionPanel const): (WebKit::WebExtensionAPIDevToolsPanels::createPanel): (WebKit::WebExtensionAPIDevToolsPanels::createTab): Deleted. * Source/WebKit/WebProcess/Extensions/API/WebExtensionAPIDevToolsPanels.h: * Source/WebKit/WebProcess/Extensions/Interfaces/WebExtensionAPIDevToolsPanels.idl: * Source/WebKit/WebProcess/Extensions/WebExtensionContextProxy.h: * Source/WebKit/WebProcess/Extensions/WebExtensionContextProxy.messages.in: * Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIDevTools.mm: (TestWebKitAPI::TEST): Canonical link: https://commits.webkit.org/274589@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes