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); |