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

Unified Diff: chrome/browser/devtools/devtools_window.cc

Issue 449043002: [DevTools] Make DevTools clients talk directly to DevToolsAgentHost instead of using DevToolsManage… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebased Created 6 years, 4 months 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/devtools/devtools_window.cc
diff --git a/chrome/browser/devtools/devtools_window.cc b/chrome/browser/devtools/devtools_window.cc
index 0dd6dbbc1b6ac44318f101c7e786dd2b2e043b59..b5e034bc70724cb55d2bd8dddb676e855818ddab 100644
--- a/chrome/browser/devtools/devtools_window.cc
+++ b/chrome/browser/devtools/devtools_window.cc
@@ -34,8 +34,6 @@
#include "components/pref_registry/pref_registry_syncable.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/devtools_agent_host.h"
-#include "content/public/browser/devtools_client_host.h"
-#include "content/public/browser/devtools_manager.h"
#include "content/public/browser/native_web_keyboard_event.h"
#include "content/public/browser/navigation_controller.h"
#include "content/public/browser/navigation_entry.h"
@@ -425,9 +423,7 @@ DevToolsWindow* DevToolsWindow::OpenDevToolsWindowForWorker(
DevToolsWindow* window = FindDevToolsWindow(worker_agent);
if (!window) {
window = DevToolsWindow::CreateDevToolsWindowForWorker(profile);
- // Will disconnect the current client host if there is one.
- content::DevToolsManager::GetInstance()->RegisterDevToolsClientHostFor(
- worker_agent, window->bindings_);
+ window->bindings_->InspectAgentHost(worker_agent);
}
window->ScheduleShow(DevToolsToggleAction::Show());
return window;
@@ -478,8 +474,7 @@ void DevToolsWindow::OpenExternalFrontend(
if (!window) {
window = Create(profile, DevToolsUI::GetProxyURL(frontend_url), NULL,
false, true, false, "");
- content::DevToolsManager::GetInstance()->RegisterDevToolsClientHostFor(
- agent_host, window->bindings_);
+ window->bindings_->InspectAgentHost(agent_host);
}
window->ScheduleShow(DevToolsToggleAction::Show());
}
@@ -492,7 +487,6 @@ DevToolsWindow* DevToolsWindow::ToggleDevToolsWindow(
const std::string& settings) {
scoped_refptr<DevToolsAgentHost> agent(
DevToolsAgentHost::GetOrCreateFor(inspected_rvh));
- content::DevToolsManager* manager = content::DevToolsManager::GetInstance();
DevToolsWindow* window = FindDevToolsWindow(agent.get());
bool do_open = force_open;
if (!window) {
@@ -502,7 +496,7 @@ DevToolsWindow* DevToolsWindow::ToggleDevToolsWindow(
base::UserMetricsAction("DevTools_InspectRenderer"));
window = Create(
profile, GURL(), inspected_rvh, false, false, true, settings);
- manager->RegisterDevToolsClientHostFor(agent.get(), window->bindings_);
+ window->bindings_->InspectAgentHost(agent.get());
do_open = true;
}
@@ -795,10 +789,9 @@ DevToolsWindow* DevToolsWindow::FindDevToolsWindow(
if (!agent_host || g_instances == NULL)
return NULL;
DevToolsWindows* instances = g_instances.Pointer();
- content::DevToolsManager* manager = content::DevToolsManager::GetInstance();
for (DevToolsWindows::iterator it(instances->begin()); it != instances->end();
++it) {
- if (manager->GetDevToolsAgentHostFor((*it)->bindings_) == agent_host)
+ if ((*it)->bindings_->agent_host() == agent_host)
pfeldman 2014/08/07 15:40:30 You could try matching bindings client here instea
dgozman 2014/08/07 16:51:52 Using IsAttachedTo.
return *it;
}
return NULL;
@@ -828,14 +821,9 @@ WebContents* DevToolsWindow::OpenURLFromTab(
inspected_web_contents->OpenURL(params) : NULL;
}
- content::DevToolsManager* manager = content::DevToolsManager::GetInstance();
- scoped_refptr<DevToolsAgentHost> agent_host(
- manager->GetDevToolsAgentHostFor(bindings_));
- if (!agent_host.get())
+ if (!bindings_->agent_host())
return NULL;
- manager->ClientHostClosing(bindings_);
- manager->RegisterDevToolsClientHostFor(agent_host.get(),
- bindings_);
+ bindings_->InspectAgentHost(bindings_->agent_host());
pfeldman 2014/08/07 15:40:30 bindings->Reattach()
dgozman 2014/08/07 16:51:52 Done.
content::NavigationController::LoadURLParams load_url_params(params.url);
main_web_contents_->GetController().LoadURLWithParams(load_url_params);
@@ -912,10 +900,8 @@ void DevToolsWindow::BeforeUnloadFired(WebContents* tab,
bool* proceed_to_fire_unload) {
if (!intercepted_page_beforeunload_) {
// Docked devtools window closed directly.
- if (proceed) {
- content::DevToolsManager::GetInstance()->ClientHostClosing(
- bindings_);
- }
+ if (proceed)
+ bindings_->InspectAgentHost(NULL);
pfeldman 2014/08/07 15:40:30 bindings_->Detach()
dgozman 2014/08/07 16:51:51 Done.
*proceed_to_fire_unload = proceed;
} else {
// Inspected page is attempting to close.

Powered by Google App Engine
This is Rietveld 408576698