Title: [288999] trunk
Revision
288999
Author
timo...@apple.com
Date
2022-02-02 15:04:09 -0800 (Wed, 02 Feb 2022)

Log Message

Web Inspector: didShowExtensionTab needs to pass the frameID of the tab
https://bugs.webkit.org/show_bug.cgi?id=236023
rdar://problem/88383984

Reviewed by BJ Burg.

Source/WebCore:

* inspector/InspectorFrontendClient.h:
(WebCore::InspectorFrontendClient::didShowExtensionTab):
* inspector/InspectorFrontendHost.cpp:
(WebCore::InspectorFrontendHost::didShowExtensionTab):
* inspector/InspectorFrontendHost.h:
* inspector/InspectorFrontendHost.idl:

Source/WebInspectorUI:

* UserInterface/Views/WebInspectorExtensionTabContentView.js:
(WI.WebInspectorExtensionTabContentView.prototype._maybeDispatchDidShowExtensionTab):
(WI.WebInspectorExtensionTabContentView):

Source/WebKit:

* UIProcess/API/APIInspectorExtensionClient.h:
(API::InspectorExtensionClient::didShowExtensionTab):
* UIProcess/API/Cocoa/_WKInspectorExtensionDelegate.h:
* UIProcess/Inspector/Cocoa/InspectorExtensionDelegate.h:
* UIProcess/Inspector/Cocoa/InspectorExtensionDelegate.mm:
(WebKit::InspectorExtensionDelegate::InspectorExtensionDelegate):
(WebKit::InspectorExtensionDelegate::InspectorExtensionClient::didShowExtensionTab):
* UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.cpp:
(WebKit::WebInspectorUIExtensionControllerProxy::didShowExtensionTab):
* UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.h:
* UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.messages.in:
* WebProcess/Inspector/RemoteWebInspectorUI.cpp:
(WebKit::RemoteWebInspectorUI::didShowExtensionTab):
* WebProcess/Inspector/RemoteWebInspectorUI.h:
* WebProcess/Inspector/WebInspectorUI.cpp:
(WebKit::WebInspectorUI::didShowExtensionTab):
* WebProcess/Inspector/WebInspectorUI.h:
* WebProcess/Inspector/WebInspectorUIExtensionController.cpp:
(WebKit::WebInspectorUIExtensionController::didShowExtensionTab):
* WebProcess/Inspector/WebInspectorUIExtensionController.h:

Tools:

* TestWebKitAPI/Tests/WebKitCocoa/WKInspectorExtension.mm:
(-[InspectorExtensionDelegateForTestingInspectorExtension inspectorExtension:didShowTabWithIdentifier:withFrameHandle:]):
(-[InspectorExtensionDelegateForTestingInspectorExtension inspectorExtension:didShowTabWithIdentifier:]): Deleted.
* TestWebKitAPI/Tests/WebKitCocoa/WKInspectorExtensionDelegate.mm:
(-[InspectorExtensionDelegateForTesting inspectorExtension:didShowTabWithIdentifier:withFrameHandle:]):
(-[InspectorExtensionDelegateForTesting inspectorExtension:didShowTabWithIdentifier:]): Deleted.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (288998 => 288999)


--- trunk/Source/WebCore/ChangeLog	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebCore/ChangeLog	2022-02-02 23:04:09 UTC (rev 288999)
@@ -1,3 +1,18 @@
+2022-02-02  Timothy Hatcher  <timo...@apple.com>
+
+        Web Inspector: didShowExtensionTab needs to pass the frameID of the tab
+        https://bugs.webkit.org/show_bug.cgi?id=236023
+        rdar://problem/88383984
+
+        Reviewed by BJ Burg.
+
+        * inspector/InspectorFrontendClient.h:
+        (WebCore::InspectorFrontendClient::didShowExtensionTab):
+        * inspector/InspectorFrontendHost.cpp:
+        (WebCore::InspectorFrontendHost::didShowExtensionTab):
+        * inspector/InspectorFrontendHost.h:
+        * inspector/InspectorFrontendHost.idl:
+
 2022-02-02  Said Abou-Hallawa  <s...@apple.com>
 
         [GPU Process] Remove DisplayList::Replayer::Delegate and DisplayList::RecorderImpl::Delegate

Modified: trunk/Source/WebCore/inspector/InspectorFrontendClient.h (288998 => 288999)


--- trunk/Source/WebCore/inspector/InspectorFrontendClient.h	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebCore/inspector/InspectorFrontendClient.h	2022-02-02 23:04:09 UTC (rev 288999)
@@ -33,6 +33,7 @@
 
 #include "CertificateInfo.h"
 #include "DiagnosticLoggingClient.h"
+#include "FrameIdentifier.h"
 #include "InspectorDebuggableType.h"
 #include "UserInterfaceLayoutDirection.h"
 #include <wtf/Forward.h>
@@ -117,10 +118,10 @@
     virtual bool diagnosticLoggingAvailable() { return false; }
     virtual void logDiagnosticEvent(const String& /* eventName */, const DiagnosticLoggingClient::ValueDictionary&) { }
 #endif
-    
+
 #if ENABLE(INSPECTOR_EXTENSIONS)
     virtual bool supportsWebExtensions() { return false; }
-    virtual void didShowExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&) { }
+    virtual void didShowExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&, FrameIdentifier) { }
     virtual void didHideExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&) { }
     virtual void didNavigateExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&, const URL&) { }
     virtual void inspectedPageDidNavigate(const URL&) { }

Modified: trunk/Source/WebCore/inspector/InspectorFrontendHost.cpp (288998 => 288999)


--- trunk/Source/WebCore/inspector/InspectorFrontendHost.cpp	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebCore/inspector/InspectorFrontendHost.cpp	2022-02-02 23:04:09 UTC (rev 288999)
@@ -692,12 +692,16 @@
 }
 
 #if ENABLE(INSPECTOR_EXTENSIONS)
-void InspectorFrontendHost::didShowExtensionTab(const String& extensionID, const String& extensionTabID)
+void InspectorFrontendHost::didShowExtensionTab(const String& extensionID, const String& extensionTabID, HTMLIFrameElement& extensionFrameElement)
 {
     if (!m_client)
         return;
-    
-    m_client->didShowExtensionTab(extensionID, extensionTabID);
+
+    Frame* frame = extensionFrameElement.contentFrame();
+    if (!frame)
+        return;
+
+    m_client->didShowExtensionTab(extensionID, extensionTabID, valueOrDefault(frame->frameID()));
 }
 
 void InspectorFrontendHost::didHideExtensionTab(const String& extensionID, const String& extensionTabID)

Modified: trunk/Source/WebCore/inspector/InspectorFrontendHost.h (288998 => 288999)


--- trunk/Source/WebCore/inspector/InspectorFrontendHost.h	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebCore/inspector/InspectorFrontendHost.h	2022-02-02 23:04:09 UTC (rev 288999)
@@ -141,7 +141,7 @@
 
     bool supportsWebExtensions();
 #if ENABLE(INSPECTOR_EXTENSIONS)
-    void didShowExtensionTab(const String& extensionID, const String& extensionTabID);
+    void didShowExtensionTab(const String& extensionID, const String& extensionTabID, HTMLIFrameElement& extensionFrame);
     void didHideExtensionTab(const String& extensionID, const String& extensionTabID);
     void didNavigateExtensionTab(const String& extensionID, const String& extensionTabID, const String& url);
     void inspectedPageDidNavigate(const String& url);

Modified: trunk/Source/WebCore/inspector/InspectorFrontendHost.idl (288998 => 288999)


--- trunk/Source/WebCore/inspector/InspectorFrontendHost.idl	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebCore/inspector/InspectorFrontendHost.idl	2022-02-02 23:04:09 UTC (rev 288999)
@@ -97,7 +97,7 @@
     [Conditional=INSPECTOR_TELEMETRY] undefined logDiagnosticEvent(DOMString eventName, DOMString content);
 
     readonly attribute boolean supportsWebExtensions;
-    [Conditional=INSPECTOR_EXTENSIONS] undefined didShowExtensionTab(DOMString extensionID, DOMString extensionTabID);
+    [Conditional=INSPECTOR_EXTENSIONS] undefined didShowExtensionTab(DOMString extensionID, DOMString extensionTabID, HTMLIFrameElement extensionFrame);
     [Conditional=INSPECTOR_EXTENSIONS] undefined didHideExtensionTab(DOMString extensionID, DOMString extensionTabID);
     [Conditional=INSPECTOR_EXTENSIONS] undefined didNavigateExtensionTab(DOMString extensionID, DOMString extensionTabID, DOMString newURL);
     [Conditional=INSPECTOR_EXTENSIONS] undefined inspectedPageDidNavigate(DOMString newURL);

Modified: trunk/Source/WebInspectorUI/ChangeLog (288998 => 288999)


--- trunk/Source/WebInspectorUI/ChangeLog	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebInspectorUI/ChangeLog	2022-02-02 23:04:09 UTC (rev 288999)
@@ -1,3 +1,15 @@
+2022-02-02  Timothy Hatcher  <timo...@apple.com>
+
+        Web Inspector: didShowExtensionTab needs to pass the frameID of the tab
+        https://bugs.webkit.org/show_bug.cgi?id=236023
+        rdar://problem/88383984
+
+        Reviewed by BJ Burg.
+
+        * UserInterface/Views/WebInspectorExtensionTabContentView.js:
+        (WI.WebInspectorExtensionTabContentView.prototype._maybeDispatchDidShowExtensionTab):
+        (WI.WebInspectorExtensionTabContentView):
+
 2022-02-02  Don Olmstead  <don.olmst...@sony.com>
 
         WebInspector: Add additional image MIME types to frontend

Modified: trunk/Source/WebInspectorUI/UserInterface/Views/WebInspectorExtensionTabContentView.js (288998 => 288999)


--- trunk/Source/WebInspectorUI/UserInterface/Views/WebInspectorExtensionTabContentView.js	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/WebInspectorExtensionTabContentView.js	2022-02-02 23:04:09 UTC (rev 288999)
@@ -151,7 +151,7 @@
             return;
 
         if (InspectorFrontendHost.supportsWebExtensions)
-            InspectorFrontendHost.didShowExtensionTab(this._extension.extensionID, this._extensionTabID);
+            InspectorFrontendHost.didShowExtensionTab(this._extension.extensionID, this._extensionTabID, this._iframeElement);
     }
 };
 

Modified: trunk/Source/WebKit/ChangeLog (288998 => 288999)


--- trunk/Source/WebKit/ChangeLog	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/ChangeLog	2022-02-02 23:04:09 UTC (rev 288999)
@@ -1,3 +1,32 @@
+2022-02-02  Timothy Hatcher  <timo...@apple.com>
+
+        Web Inspector: didShowExtensionTab needs to pass the frameID of the tab
+        https://bugs.webkit.org/show_bug.cgi?id=236023
+        rdar://problem/88383984
+
+        Reviewed by BJ Burg.
+
+        * UIProcess/API/APIInspectorExtensionClient.h:
+        (API::InspectorExtensionClient::didShowExtensionTab):
+        * UIProcess/API/Cocoa/_WKInspectorExtensionDelegate.h:
+        * UIProcess/Inspector/Cocoa/InspectorExtensionDelegate.h:
+        * UIProcess/Inspector/Cocoa/InspectorExtensionDelegate.mm:
+        (WebKit::InspectorExtensionDelegate::InspectorExtensionDelegate):
+        (WebKit::InspectorExtensionDelegate::InspectorExtensionClient::didShowExtensionTab):
+        * UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.cpp:
+        (WebKit::WebInspectorUIExtensionControllerProxy::didShowExtensionTab):
+        * UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.h:
+        * UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.messages.in:
+        * WebProcess/Inspector/RemoteWebInspectorUI.cpp:
+        (WebKit::RemoteWebInspectorUI::didShowExtensionTab):
+        * WebProcess/Inspector/RemoteWebInspectorUI.h:
+        * WebProcess/Inspector/WebInspectorUI.cpp:
+        (WebKit::WebInspectorUI::didShowExtensionTab):
+        * WebProcess/Inspector/WebInspectorUI.h:
+        * WebProcess/Inspector/WebInspectorUIExtensionController.cpp:
+        (WebKit::WebInspectorUIExtensionController::didShowExtensionTab):
+        * WebProcess/Inspector/WebInspectorUIExtensionController.h:
+
 2022-02-02  Said Abou-Hallawa  <s...@apple.com>
 
         [GPU Process] Remove DisplayList::Replayer::Delegate and DisplayList::RecorderImpl::Delegate

Modified: trunk/Source/WebKit/UIProcess/API/APIInspectorExtensionClient.h (288998 => 288999)


--- trunk/Source/WebKit/UIProcess/API/APIInspectorExtensionClient.h	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/UIProcess/API/APIInspectorExtensionClient.h	2022-02-02 23:04:09 UTC (rev 288999)
@@ -35,7 +35,7 @@
 public:
     virtual ~InspectorExtensionClient() = default;
 
-    virtual void didShowExtensionTab(const Inspector::ExtensionTabID&) { }
+    virtual void didShowExtensionTab(const Inspector::ExtensionTabID&, WebCore::FrameIdentifier) { }
     virtual void didHideExtensionTab(const Inspector::ExtensionTabID&) { }
     virtual void didNavigateExtensionTab(const Inspector::ExtensionTabID&, const WTF::URL&) { }
     virtual void inspectedPageDidNavigate(const WTF::URL&) { }

Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtensionDelegate.h (288998 => 288999)


--- trunk/Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtensionDelegate.h	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtensionDelegate.h	2022-02-02 23:04:09 UTC (rev 288999)
@@ -33,6 +33,7 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+@class _WKFrameHandle;
 @class _WKInspectorExtension;
 
 @protocol _WKInspectorExtensionDelegate <NSObject>
@@ -43,7 +44,7 @@
  * @param extension The extension that created the shown tab.
  * @param tabIdentifier Identifier for the tab that was shown.
  */
-- (void)inspectorExtension:(_WKInspectorExtension *)extension didShowTabWithIdentifier:(NSString *)tabIdentifier;
+- (void)inspectorExtension:(_WKInspectorExtension *)extension didShowTabWithIdentifier:(NSString *)tabIdentifier withFrameHandle:(_WKFrameHandle *)frameHandle;
 
 /**
  * @abstract Called when a tab associated with this extension has been hidden.

Modified: trunk/Source/WebKit/UIProcess/Inspector/Cocoa/InspectorExtensionDelegate.h (288998 => 288999)


--- trunk/Source/WebKit/UIProcess/Inspector/Cocoa/InspectorExtensionDelegate.h	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/UIProcess/Inspector/Cocoa/InspectorExtensionDelegate.h	2022-02-02 23:04:09 UTC (rev 288999)
@@ -54,7 +54,7 @@
 
     private:
         // API::InspectorExtensionClient
-        void didShowExtensionTab(const Inspector::ExtensionTabID&) override;
+        void didShowExtensionTab(const Inspector::ExtensionTabID&, WebCore::FrameIdentifier) override;
         void didHideExtensionTab(const Inspector::ExtensionTabID&) override;
         void didNavigateExtensionTab(const Inspector::ExtensionTabID&, const URL&) override;
         void inspectedPageDidNavigate(const URL&) override;

Modified: trunk/Source/WebKit/UIProcess/Inspector/Cocoa/InspectorExtensionDelegate.mm (288998 => 288999)


--- trunk/Source/WebKit/UIProcess/Inspector/Cocoa/InspectorExtensionDelegate.mm	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/UIProcess/Inspector/Cocoa/InspectorExtensionDelegate.mm	2022-02-02 23:04:09 UTC (rev 288999)
@@ -28,7 +28,9 @@
 
 #if ENABLE(INSPECTOR_EXTENSIONS)
 
+#import "APIFrameHandle.h"
 #import "WebInspectorUIProxy.h"
+#import "_WKFrameHandleInternal.h"
 #import "_WKInspectorExtensionDelegate.h"
 #import "_WKInspectorExtensionInternal.h"
 #import <wtf/UniqueRef.h>
@@ -39,7 +41,7 @@
     : m_inspectorExtension(inspectorExtension)
     , m_delegate(delegate)
 {
-    m_delegateMethods.inspectorExtensionDidShowTabWithIdentifier = [delegate respondsToSelector:@selector(inspectorExtension:didShowTabWithIdentifier:)];
+    m_delegateMethods.inspectorExtensionDidShowTabWithIdentifier = [delegate respondsToSelector:@selector(inspectorExtension:didShowTabWithIdentifier:withFrameHandle:)];
     m_delegateMethods.inspectorExtensionDidHideTabWithIdentifier = [delegate respondsToSelector:@selector(inspectorExtension:didHideTabWithIdentifier:)];
     m_delegateMethods.inspectorExtensionDidNavigateTabWithIdentifier = [delegate respondsToSelector:@selector(inspectorExtension:didNavigateTabWithIdentifier:newURL:)];
     m_delegateMethods.inspectorExtensionInspectedPageDidNavigate = [delegate respondsToSelector:@selector(inspectorExtension:inspectedPageDidNavigate:)];
@@ -63,7 +65,7 @@
 {
 }
 
-void InspectorExtensionDelegate::InspectorExtensionClient::didShowExtensionTab(const Inspector::ExtensionTabID& extensionTabID)
+void InspectorExtensionDelegate::InspectorExtensionClient::didShowExtensionTab(const Inspector::ExtensionTabID& extensionTabID, WebCore::FrameIdentifier frameID)
 {
     if (!m_inspectorExtensionDelegate.m_delegateMethods.inspectorExtensionDidShowTabWithIdentifier)
         return;
@@ -72,7 +74,7 @@
     if (!delegate)
         return;
 
-    [delegate inspectorExtension:m_inspectorExtensionDelegate.m_inspectorExtension.get().get() didShowTabWithIdentifier:extensionTabID];
+    [delegate inspectorExtension:m_inspectorExtensionDelegate.m_inspectorExtension.get().get() didShowTabWithIdentifier:extensionTabID withFrameHandle:wrapper(API::FrameHandle::create(frameID))];
 }
 
 void InspectorExtensionDelegate::InspectorExtensionClient::didHideExtensionTab(const Inspector::ExtensionTabID& extensionTabID)

Modified: trunk/Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.cpp (288998 => 288999)


--- trunk/Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.cpp	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.cpp	2022-02-02 23:04:09 UTC (rev 288999)
@@ -240,7 +240,7 @@
 
 // WebInspectorUIExtensionControllerProxy IPC messages.
 
-void WebInspectorUIExtensionControllerProxy::didShowExtensionTab(const Inspector::ExtensionID& extensionID, const Inspector::ExtensionTabID& extensionTabID)
+void WebInspectorUIExtensionControllerProxy::didShowExtensionTab(const Inspector::ExtensionID& extensionID, const Inspector::ExtensionTabID& extensionTabID, WebCore::FrameIdentifier frameID)
 {
     auto it = m_extensionAPIObjectMap.find(extensionID);
     if (it == m_extensionAPIObjectMap.end())
@@ -251,7 +251,7 @@
     if (!extensionClient)
         return;
 
-    extensionClient->didShowExtensionTab(extensionTabID);
+    extensionClient->didShowExtensionTab(extensionTabID, frameID);
 }
 
 void WebInspectorUIExtensionControllerProxy::didHideExtensionTab(const Inspector::ExtensionID& extensionID, const Inspector::ExtensionTabID& extensionTabID)

Modified: trunk/Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.h (288998 => 288999)


--- trunk/Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.h	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.h	2022-02-02 23:04:09 UTC (rev 288999)
@@ -29,6 +29,7 @@
 
 #include "InspectorExtensionTypes.h"
 #include "MessageReceiver.h"
+#include <WebCore/FrameIdentifier.h>
 #include <wtf/Expected.h>
 #include <wtf/Forward.h>
 #include <wtf/URL.h>
@@ -66,7 +67,7 @@
     void evaluateScriptInExtensionTab(const Inspector::ExtensionTabID&, const String& scriptSource, WTF::CompletionHandler<void(Inspector::ExtensionEvaluationResult)>&&);
 
     // WebInspectorUIExtensionControllerProxy IPC messages.
-    void didShowExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&);
+    void didShowExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&, WebCore::FrameIdentifier);
     void didHideExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&);
     void didNavigateExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&, const URL&);
     void inspectedPageDidNavigate(const URL&);

Modified: trunk/Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.messages.in (288998 => 288999)


--- trunk/Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.messages.in	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.messages.in	2022-02-02 23:04:09 UTC (rev 288999)
@@ -23,7 +23,7 @@
 #if ENABLE(INSPECTOR_EXTENSIONS)
 
 messages -> WebInspectorUIExtensionControllerProxy {
-    DidShowExtensionTab(String extensionID, String extensionTabID)
+    DidShowExtensionTab(String extensionID, String extensionTabID, WebCore::FrameIdentifier frameID)
     DidHideExtensionTab(String extensionID, String extensionTabID)
     DidNavigateExtensionTab(String extensionID, String extensionTabID, URL newURL)
     InspectedPageDidNavigate(URL newURL)

Modified: trunk/Source/WebKit/WebProcess/Inspector/RemoteWebInspectorUI.cpp (288998 => 288999)


--- trunk/Source/WebKit/WebProcess/Inspector/RemoteWebInspectorUI.cpp	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/WebProcess/Inspector/RemoteWebInspectorUI.cpp	2022-02-02 23:04:09 UTC (rev 288999)
@@ -290,12 +290,12 @@
     return true;
 }
 
-void RemoteWebInspectorUI::didShowExtensionTab(const Inspector::ExtensionID& extensionID, const Inspector::ExtensionTabID& extensionTabID)
+void RemoteWebInspectorUI::didShowExtensionTab(const Inspector::ExtensionID& extensionID, const Inspector::ExtensionTabID& extensionTabID, WebCore::FrameIdentifier frameID)
 {
     if (!m_extensionController)
         return;
-    
-    m_extensionController->didShowExtensionTab(extensionID, extensionTabID);
+
+    m_extensionController->didShowExtensionTab(extensionID, extensionTabID, frameID);
 }
 
 void RemoteWebInspectorUI::didHideExtensionTab(const Inspector::ExtensionID& extensionID, const Inspector::ExtensionTabID& extensionTabID)

Modified: trunk/Source/WebKit/WebProcess/Inspector/RemoteWebInspectorUI.h (288998 => 288999)


--- trunk/Source/WebKit/WebProcess/Inspector/RemoteWebInspectorUI.h	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/WebProcess/Inspector/RemoteWebInspectorUI.h	2022-02-02 23:04:09 UTC (rev 288999)
@@ -27,6 +27,7 @@
 
 #include "DebuggableInfoData.h"
 #include "MessageReceiver.h"
+#include <WebCore/FrameIdentifier.h>
 #include <WebCore/InspectorFrontendAPIDispatcher.h>
 #include <WebCore/InspectorFrontendClient.h>
 #include <WebCore/InspectorFrontendHost.h>
@@ -120,7 +121,7 @@
         
 #if ENABLE(INSPECTOR_EXTENSIONS)
     bool supportsWebExtensions() override;
-    void didShowExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&) override;
+    void didShowExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&, WebCore::FrameIdentifier) override;
     void didHideExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&) override;
     void didNavigateExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&, const URL&) override;
     void inspectedPageDidNavigate(const URL&) override;

Modified: trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUI.cpp (288998 => 288999)


--- trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUI.cpp	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUI.cpp	2022-02-02 23:04:09 UTC (rev 288999)
@@ -364,12 +364,12 @@
     return true;
 }
 
-void WebInspectorUI::didShowExtensionTab(const String& extensionID, const String& extensionTabID)
+void WebInspectorUI::didShowExtensionTab(const String& extensionID, const String& extensionTabID, WebCore::FrameIdentifier frameID)
 {
     if (!m_extensionController)
         return;
-    
-    m_extensionController->didShowExtensionTab(extensionID, extensionTabID);
+
+    m_extensionController->didShowExtensionTab(extensionID, extensionTabID, frameID);
 }
 
 void WebInspectorUI::didHideExtensionTab(const String& extensionID, const String& extensionTabID)

Modified: trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUI.h (288998 => 288999)


--- trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUI.h	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUI.h	2022-02-02 23:04:09 UTC (rev 288999)
@@ -28,6 +28,7 @@
 #include "Connection.h"
 #include "DebuggableInfoData.h"
 #include "WebPageProxyIdentifier.h"
+#include <WebCore/FrameIdentifier.h>
 #include <WebCore/InspectorDebuggableType.h>
 #include <WebCore/InspectorFrontendAPIDispatcher.h>
 #include <WebCore/InspectorFrontendClient.h>
@@ -154,7 +155,7 @@
         
 #if ENABLE(INSPECTOR_EXTENSIONS)
     bool supportsWebExtensions() override;
-    void didShowExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&) override;
+    void didShowExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&, WebCore::FrameIdentifier) override;
     void didHideExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&) override;
     void didNavigateExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&, const URL&) override;
     void inspectedPageDidNavigate(const URL&) override;

Modified: trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.cpp (288998 => 288999)


--- trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.cpp	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.cpp	2022-02-02 23:04:09 UTC (rev 288999)
@@ -442,9 +442,9 @@
     });
 }
 
-void WebInspectorUIExtensionController::didShowExtensionTab(const Inspector::ExtensionID& extensionID, const Inspector::ExtensionTabID& extensionTabID)
+void WebInspectorUIExtensionController::didShowExtensionTab(const Inspector::ExtensionID& extensionID, const Inspector::ExtensionTabID& extensionTabID, WebCore::FrameIdentifier frameID)
 {
-    WebProcess::singleton().parentProcessConnection()->send(Messages::WebInspectorUIExtensionControllerProxy::DidShowExtensionTab { extensionID, extensionTabID }, m_inspectorPageIdentifier);
+    WebProcess::singleton().parentProcessConnection()->send(Messages::WebInspectorUIExtensionControllerProxy::DidShowExtensionTab { extensionID, extensionTabID, frameID }, m_inspectorPageIdentifier);
 }
 
 void WebInspectorUIExtensionController::didHideExtensionTab(const Inspector::ExtensionID& extensionID, const Inspector::ExtensionTabID& extensionTabID)

Modified: trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.h (288998 => 288999)


--- trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.h	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.h	2022-02-02 23:04:09 UTC (rev 288999)
@@ -31,6 +31,7 @@
 #include "DataReference.h"
 #include "InspectorExtensionTypes.h"
 #include "MessageReceiver.h"
+#include <WebCore/FrameIdentifier.h>
 #include <WebCore/InspectorFrontendAPIDispatcher.h>
 #include <WebCore/PageIdentifier.h>
 #include <wtf/Forward.h>
@@ -74,7 +75,7 @@
     void evaluateScriptInExtensionTab(const Inspector::ExtensionTabID&, const String& scriptSource, CompletionHandler<void(const IPC::DataReference&, const std::optional<WebCore::ExceptionDetails>&, const std::optional<Inspector::ExtensionError>&)>&&);
 
     // Callbacks from the frontend.
-    void didShowExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&);
+    void didShowExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&, WebCore::FrameIdentifier);
     void didHideExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&);
     void didNavigateExtensionTab(const Inspector::ExtensionID&, const Inspector::ExtensionTabID&, const URL&);
     void inspectedPageDidNavigate(const URL&);

Modified: trunk/Tools/ChangeLog (288998 => 288999)


--- trunk/Tools/ChangeLog	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Tools/ChangeLog	2022-02-02 23:04:09 UTC (rev 288999)
@@ -1,3 +1,18 @@
+2022-02-02  Timothy Hatcher  <timo...@apple.com>
+
+        Web Inspector: didShowExtensionTab needs to pass the frameID of the tab
+        https://bugs.webkit.org/show_bug.cgi?id=236023
+        rdar://problem/88383984
+
+        Reviewed by BJ Burg.
+
+        * TestWebKitAPI/Tests/WebKitCocoa/WKInspectorExtension.mm:
+        (-[InspectorExtensionDelegateForTestingInspectorExtension inspectorExtension:didShowTabWithIdentifier:withFrameHandle:]):
+        (-[InspectorExtensionDelegateForTestingInspectorExtension inspectorExtension:didShowTabWithIdentifier:]): Deleted.
+        * TestWebKitAPI/Tests/WebKitCocoa/WKInspectorExtensionDelegate.mm:
+        (-[InspectorExtensionDelegateForTesting inspectorExtension:didShowTabWithIdentifier:withFrameHandle:]):
+        (-[InspectorExtensionDelegateForTesting inspectorExtension:didShowTabWithIdentifier:]): Deleted.
+
 2022-02-02  Said Abou-Hallawa  <s...@apple.com>
 
         [GPU Process] Remove DisplayList::Replayer::Delegate and DisplayList::RecorderImpl::Delegate

Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKInspectorExtension.mm (288998 => 288999)


--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKInspectorExtension.mm	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKInspectorExtension.mm	2022-02-02 23:04:09 UTC (rev 288999)
@@ -73,7 +73,7 @@
 @implementation InspectorExtensionDelegateForTestingInspectorExtension {
 }
 
-- (void)inspectorExtension:(_WKInspectorExtension *)extension didShowTabWithIdentifier:(NSString *)tabIdentifier
+- (void)inspectorExtension:(_WKInspectorExtension *)extension didShowTabWithIdentifier:(NSString *)tabIdentifier withFrameHandle:(_WKFrameHandle *)frameHandle
 {
     didShowExtensionTabWasCalled = true;
 }

Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKInspectorExtensionDelegate.mm (288998 => 288999)


--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKInspectorExtensionDelegate.mm	2022-02-02 22:37:02 UTC (rev 288998)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKInspectorExtensionDelegate.mm	2022-02-02 23:04:09 UTC (rev 288999)
@@ -75,7 +75,7 @@
 @implementation InspectorExtensionDelegateForTesting {
 }
 
-- (void)inspectorExtension:(_WKInspectorExtension *)extension didShowTabWithIdentifier:(NSString *)tabIdentifier
+- (void)inspectorExtension:(_WKInspectorExtension *)extension didShowTabWithIdentifier:(NSString *)tabIdentifier withFrameHandle:(_WKFrameHandle *)frameHandle
 {
     didShowExtensionTabWasCalled = true;
 }
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to