Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(234)

Unified Diff: chrome/browser/extensions/extension_devtools_bridge.cc

Issue 8549022: Define DevTools content API (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressed comments Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/extension_devtools_bridge.cc
diff --git a/chrome/browser/extensions/extension_devtools_bridge.cc b/chrome/browser/extensions/extension_devtools_bridge.cc
index 5372296471c5dbb64dd199d255eb440c487ccb3d..237e07238e3885f8f9309848935c62c20775f642 100644
--- a/chrome/browser/extensions/extension_devtools_bridge.cc
+++ b/chrome/browser/extensions/extension_devtools_bridge.cc
@@ -15,9 +15,13 @@
#include "chrome/browser/extensions/extension_tab_util.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h"
-#include "content/browser/debugger/devtools_manager.h"
#include "content/browser/tab_contents/tab_contents.h"
-#include "content/common/devtools_messages.h"
+#include "content/public/browser/devtools_agent_host_registry.h"
+#include "content/public/browser/devtools_manager.h"
+
+using content::DevToolsAgentHost;
+using content::DevToolsAgentHostRegistry;
+using content::DevToolsManager;
ExtensionDevToolsBridge::ExtensionDevToolsBridge(int tab_id,
Profile* profile)
@@ -56,29 +60,25 @@ bool ExtensionDevToolsBridge::RegisterAsDevToolsClientHost() {
&browser, &tab_strip,
&contents, &tab_index)) {
DevToolsManager* devtools_manager = DevToolsManager::GetInstance();
- if (devtools_manager->GetDevToolsClientHostFor(contents->
- render_view_host()) != NULL)
+ DevToolsAgentHost* agent = DevToolsAgentHostRegistry::GetDevToolsAgentHost(
+ contents->render_view_host());
+ if (devtools_manager->GetDevToolsClientHostFor(agent))
return false;
- devtools_manager->RegisterDevToolsClientHostFor(
- contents->render_view_host(), this);
+ devtools_manager->RegisterDevToolsClientHostFor(agent, this);
// Following messages depend on inspector protocol that is not yet
// finalized.
// 1. Start timeline profiler.
- devtools_manager->ForwardToDevToolsAgent(
+ devtools_manager->DispatchOnInspectorBackend(
this,
- DevToolsAgentMsg_DispatchOnInspectorBackend(
- MSG_ROUTING_NONE,
- FormatDevToolsMessage(2, "Timeline.start")));
+ FormatDevToolsMessage(2, "Timeline.start"));
// 2. Enable network resource tracking.
- devtools_manager->ForwardToDevToolsAgent(
+ devtools_manager->DispatchOnInspectorBackend(
this,
- DevToolsAgentMsg_DispatchOnInspectorBackend(
- MSG_ROUTING_NONE,
- FormatDevToolsMessage(3, "Network.enable")));
+ FormatDevToolsMessage(3, "Network.enable"));
return true;
}
@@ -87,8 +87,7 @@ bool ExtensionDevToolsBridge::RegisterAsDevToolsClientHost() {
void ExtensionDevToolsBridge::UnregisterAsDevToolsClientHost() {
DCHECK_EQ(MessageLoop::current()->type(), MessageLoop::TYPE_UI);
-
- NotifyCloseListener();
+ DevToolsManager::GetInstance()->ClientHostClosing(this);
}
// If the tab we are looking at is going away then we fire a closing event at
@@ -106,20 +105,7 @@ void ExtensionDevToolsBridge::InspectedTabClosing() {
extension_devtools_manager_->BridgeClosingForTab(tab_id_);
}
-void ExtensionDevToolsBridge::SendMessageToClient(const IPC::Message& msg) {
- IPC_BEGIN_MESSAGE_MAP(ExtensionDevToolsBridge, msg)
- IPC_MESSAGE_HANDLER(DevToolsClientMsg_DispatchOnInspectorFrontend,
- OnDispatchOnInspectorFrontend);
- IPC_MESSAGE_UNHANDLED_ERROR()
- IPC_END_MESSAGE_MAP()
-}
-
-void ExtensionDevToolsBridge::TabReplaced(TabContents* new_tab) {
- // We don't update the tab id as it needs to remain the same so that we can
- // properly unregister.
-}
-
-void ExtensionDevToolsBridge::OnDispatchOnInspectorFrontend(
+void ExtensionDevToolsBridge::DispatchOnInspectorFrontend(
const std::string& data) {
DCHECK_EQ(MessageLoop::current()->type(), MessageLoop::TYPE_UI);
@@ -127,3 +113,8 @@ void ExtensionDevToolsBridge::OnDispatchOnInspectorFrontend(
profile_->GetExtensionEventRouter()->DispatchEventToRenderers(
on_page_event_name_, json, profile_, GURL());
}
+
+void ExtensionDevToolsBridge::TabReplaced(TabContents* new_tab) {
+ // We don't update the tab id as it needs to remain the same so that we can
+ // properly unregister.
+}

Powered by Google App Engine
This is Rietveld 408576698