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

Unified Diff: content/browser/devtools/embedded_worker_devtools_manager.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: content/browser/devtools/embedded_worker_devtools_manager.cc
diff --git a/content/browser/devtools/embedded_worker_devtools_manager.cc b/content/browser/devtools/embedded_worker_devtools_manager.cc
index 0d9b7e9cd34444aaa3c098531be5cd9daca1278d..4c7f108c0bc5093f10f26c1b2aacafdee8e28533 100644
--- a/content/browser/devtools/embedded_worker_devtools_manager.cc
+++ b/content/browser/devtools/embedded_worker_devtools_manager.cc
@@ -151,6 +151,11 @@ class EmbeddedWorkerDevToolsManager::EmbeddedWorkerDevToolsAgentHost
Release();
}
+ void SendDisconnectedNotification() {
+ SendMessageToClient(DevToolsProtocol::CreateNotification(
+ devtools::Worker::disconnectedFromWorker::kName, NULL)->Serialize());
+ }
+
WorkerId worker_id() const { return worker_id_; }
private:
@@ -161,8 +166,7 @@ class EmbeddedWorkerDevToolsManager::EmbeddedWorkerDevToolsAgentHost
}
void OnDispatchOnInspectorFrontend(const std::string& message) {
- DevToolsManagerImpl::GetInstance()->DispatchOnInspectorFrontend(this,
- message);
+ SendMessageToClient(message);
}
void OnSaveAgentRuntimeState(const std::string& state) { state_ = state; }
@@ -188,7 +192,8 @@ EmbeddedWorkerDevToolsManager* EmbeddedWorkerDevToolsManager::GetInstance() {
return Singleton<EmbeddedWorkerDevToolsManager>::get();
}
-DevToolsAgentHost* EmbeddedWorkerDevToolsManager::GetDevToolsAgentHostForWorker(
+DevToolsAgentHostImpl*
+EmbeddedWorkerDevToolsManager::GetDevToolsAgentHostForWorker(
int worker_process_id,
int worker_route_id) {
WorkerId id(worker_process_id, worker_route_id);
@@ -210,7 +215,7 @@ DevToolsAgentHost* EmbeddedWorkerDevToolsManager::GetDevToolsAgentHostForWorker(
return agent_host;
}
-DevToolsAgentHost*
+DevToolsAgentHostImpl*
EmbeddedWorkerDevToolsManager::GetDevToolsAgentHostForServiceWorker(
const ServiceWorkerIdentifier& service_worker_id) {
WorkerInfoMap::iterator it = FindExistingServiceWorkerInfo(service_worker_id);
@@ -280,12 +285,7 @@ void EmbeddedWorkerDevToolsManager::WorkerDestroyed(int worker_process_id,
return;
}
// Client host is debugging this worker agent host.
- std::string notification =
- DevToolsProtocol::CreateNotification(
- devtools::Worker::disconnectedFromWorker::kName, NULL)
- ->Serialize();
- DevToolsManagerImpl::GetInstance()->DispatchOnInspectorFrontend(
- agent_host, notification);
+ agent_host->SendDisconnectedNotification();
agent_host->DetachFromWorker();
break;
}
@@ -311,10 +311,9 @@ void EmbeddedWorkerDevToolsManager::WorkerContextStarted(int worker_process_id,
WorkerInfo* info = it->second;
if (info->state() == WORKER_PAUSED_FOR_DEBUG_ON_START) {
RenderProcessHost* rph = RenderProcessHost::FromID(worker_process_id);
- scoped_refptr<DevToolsAgentHost> agent_host(
+ scoped_refptr<DevToolsAgentHostImpl> agent_host(
GetDevToolsAgentHostForWorker(worker_process_id, worker_route_id));
- DevToolsManagerImpl::GetInstance()->Inspect(rph->GetBrowserContext(),
- agent_host.get());
+ agent_host->Inspect(rph->GetBrowserContext());
} else if (info->state() == WORKER_PAUSED_FOR_REATTACH) {
info->agent_host()->ReattachToWorker(id);
info->set_state(WORKER_INSPECTED);

Powered by Google App Engine
This is Rietveld 408576698