Index: content/public/browser/devtools_client_host.h |
diff --git a/content/browser/debugger/devtools_client_host.h b/content/public/browser/devtools_client_host.h |
similarity index 53% |
rename from content/browser/debugger/devtools_client_host.h |
rename to content/public/browser/devtools_client_host.h |
index 0ae8c1b9094b0cf2ca2673f15468b7a7aeba8f43..b88fbba5c4b84e05b4ad2521ad7dded46ddd794d 100644 |
--- a/content/browser/debugger/devtools_client_host.h |
+++ b/content/public/browser/devtools_client_host.h |
@@ -2,8 +2,8 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef CONTENT_BROWSER_DEBUGGER_DEVTOOLS_CLIENT_HOST_H_ |
-#define CONTENT_BROWSER_DEBUGGER_DEVTOOLS_CLIENT_HOST_H_ |
+#ifndef CONTENT_PUBLIC_BROWSER_DEVTOOLS_CLIENT_HOST_H_ |
+#define CONTENT_PUBLIC_BROWSER_DEVTOOLS_CLIENT_HOST_H_ |
#pragma once |
#include <string> |
@@ -15,24 +15,24 @@ namespace IPC { |
class Message; |
} |
+class RenderViewHost; |
class TabContents; |
+namespace content { |
+ |
+class DevToolsFrontendHostDelegate; |
+ |
// Describes interface for managing devtools clients from browser process. There |
// are currently two types of clients: devtools windows and TCP socket |
// debuggers. |
class CONTENT_EXPORT DevToolsClientHost { |
public: |
- class CONTENT_EXPORT CloseListener { |
- public: |
- CloseListener() {} |
- virtual ~CloseListener() {} |
- virtual void ClientHostClosing(DevToolsClientHost* host) = 0; |
- private: |
- DISALLOW_COPY_AND_ASSIGN(CloseListener); |
- }; |
- |
+ DevToolsClientHost(); |
jam
2011/12/01 03:51:47
nit: we avoid constructors on interfaces
yurys
2011/12/01 15:20:06
Done.
|
virtual ~DevToolsClientHost(); |
jam
2011/12/01 03:51:47
nit: convention for the content API is to inline t
yurys
2011/12/01 15:20:06
Done.
|
+ // Dispatches given message on the front-end. |
+ virtual void DispatchOnInspectorFrontend(const std::string& message) = 0; |
+ |
// This method is called when tab inspected by this devtools client is |
// closing. |
virtual void InspectedTabClosing() = 0; |
@@ -41,29 +41,20 @@ class CONTENT_EXPORT DevToolsClientHost { |
// navigating to |url|. |
virtual void FrameNavigating(const std::string& url) = 0; |
- // Sends the message to the devtools client hosted by this object. |
- virtual void SendMessageToClient(const IPC::Message& msg) = 0; |
- |
- void set_close_listener(CloseListener* listener) { |
- close_listener_ = listener; |
- } |
- |
// Invoked when a tab is replaced by another tab. This is triggered by |
// TabStripModel::ReplaceTabContentsAt. |
virtual void TabReplaced(TabContents* new_tab) = 0; |
- protected: |
- DevToolsClientHost(); |
- |
- void ForwardToDevToolsAgent(const IPC::Message& message); |
+ // Creates DevToolsClientHost for TabContents containing default DevTools |
+ // frontend implementation. |
+ static DevToolsClientHost* CreateDevToolsFrontendHost( |
+ TabContents* client_tab_contents, |
+ DevToolsFrontendHostDelegate* delegate); |
- // Should be called when the devtools client is going to die and this |
- // DevToolsClientHost should not be used anymore. |
- void NotifyCloseListener(); |
- |
- private: |
- CloseListener* close_listener_; |
- DISALLOW_COPY_AND_ASSIGN(DevToolsClientHost); |
+ // Sets up DevToolsClient on the corresponding RenderView. |
+ static void SetupDevToolsFrontendClient(RenderViewHost* frontend_rvh); |
}; |
-#endif // CONTENT_BROWSER_DEBUGGER_DEVTOOLS_CLIENT_HOST_H_ |
+} // namespace content |
+ |
+#endif // CONTENT_PUBLIC_BROWSER_DEVTOOLS_CLIENT_HOST_H_ |