Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: bbc211140430e58da5821a8e87d1f6736a984929
https://github.com/WebKit/WebKit/commit/bbc211140430e58da5821a8e87d1f6736a984929
Author: Timothy Hatcher <[email protected]>
Date: 2024-02-14 (Wed, 14 Feb 2024)
Changed paths:
M
Source/WebInspectorUI/UserInterface/Controllers/WebInspectorExtensionController.js
M Source/WebKit/Shared/InspectorExtensionTypes.h
M Source/WebKit/UIProcess/API/APIInspectorExtension.cpp
M Source/WebKit/UIProcess/API/APIInspectorExtension.h
M Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtension.mm
A
Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIDevToolsInspectedWindow.mm
M
Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIDevToolsPanels.mm
M Source/WebKit/UIProcess/Extensions/WebExtensionContext.h
M Source/WebKit/UIProcess/Extensions/WebExtensionContext.messages.in
M
Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.cpp
M Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.h
M Source/WebKit/WebKit.xcodeproj/project.pbxproj
M
Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIDevToolsInspectedWindowCocoa.mm
M
Source/WebKit/WebProcess/Extensions/API/WebExtensionAPIDevToolsInspectedWindow.h
M
Source/WebKit/WebProcess/Extensions/Interfaces/WebExtensionAPIDevToolsInspectedWindow.idl
M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIDevTools.mm
Log Message:
-----------
Add support for the devtools.inspectedWindow Web Extension APIs.
https://webkit.org/bug/246485
rdar://problem/114823326
Reviewed by Jeff Miller and BJ Burg.
Adds support for the eval() and reload() functions on devtools.inspectedWindow.
This is primarily implemented by API::InspectorExtension and Inspector code.
This implementation of eval() properly returns the result as an array of two
values,
the result and error, like Chrome and Firefox. The Safari implementation just
returned
the result and never provided the exception details.
Also removed the plumbing for reload to return a evaluation result. This was
never the
case, and the Web Extension spec does not provide a result.
*
Source/WebInspectorUI/UserInterface/Controllers/WebInspectorExtensionController.js:
(WI.WebInspectorExtensionController.prototype.async evaluateScriptForExtension):
(WI.WebInspectorExtensionController.prototype.reloadForExtension): Don't use an
eval result
since reload does not provide a result to Web Extensions.
* Source/WebKit/Shared/InspectorExtensionTypes.h: Use Ref instead of RefPtr.
* Source/WebKit/UIProcess/API/APIInspectorExtension.cpp:
(API::InspectorExtension::reloadIgnoringCache):
* Source/WebKit/UIProcess/API/APIInspectorExtension.h:
* Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtension.mm:
(-[_WKInspectorExtension
reloadIgnoringCache:userAgent:injectedScript:completionHandler:]):
*
Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIDevToolsInspectedWindow.mm:
Added.
(WebKit::WebExtensionContext::devToolsInspectedWindowEval):
(WebKit::WebExtensionContext::devToolsInspectedWindowReload):
*
Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIDevToolsPanels.mm:
(WebKit::WebExtensionContext::devToolsPanelsCreate):
* Source/WebKit/UIProcess/Extensions/WebExtensionContext.h:
* Source/WebKit/UIProcess/Extensions/WebExtensionContext.messages.in:
* Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.cpp:
(WebKit::WebInspectorUIExtensionControllerProxy::evaluateScriptForExtension):
(WebKit::WebInspectorUIExtensionControllerProxy::reloadForExtension):
(WebKit::WebInspectorUIExtensionControllerProxy::evaluateScriptInExtensionTab):
* Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.h:
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
*
Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIDevToolsInspectedWindowCocoa.mm:
(WebKit::WebExtensionAPIDevToolsInspectedWindow::eval):
(WebKit::WebExtensionAPIDevToolsInspectedWindow::reload):
*
Source/WebKit/WebProcess/Extensions/API/WebExtensionAPIDevToolsInspectedWindow.h:
*
Source/WebKit/WebProcess/Extensions/Interfaces/WebExtensionAPIDevToolsInspectedWindow.idl:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIDevTools.mm:
(TEST(WKWebExtensionAPIDevTools, InspectedWindowEval)): Added.
(TEST(WKWebExtensionAPIDevTools, InspectedWindowReload)): Added.
(TEST(WKWebExtensionAPIDevTools, InspectedWindowReloadIgnoringCache)): Added.
Canonical link: https://commits.webkit.org/274645@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes