| Index: content/browser/devtools/worker_devtools_agent_host.cc
|
| diff --git a/content/browser/devtools/worker_devtools_agent_host.cc b/content/browser/devtools/worker_devtools_agent_host.cc
|
| index a0c1fc63128f064c59096264d130d0191cb60026..c94a71dd73e66aa7d9b031682525897c56e81eb7 100644
|
| --- a/content/browser/devtools/worker_devtools_agent_host.cc
|
| +++ b/content/browser/devtools/worker_devtools_agent_host.cc
|
| @@ -4,7 +4,6 @@
|
|
|
| #include "content/browser/devtools/worker_devtools_agent_host.h"
|
|
|
| -#include "content/browser/devtools/ipc_devtools_agent_host.h"
|
| #include "content/browser/devtools/protocol/devtools_protocol_handler.h"
|
| #include "content/public/browser/browser_thread.h"
|
| #include "content/public/browser/render_process_host.h"
|
| @@ -16,31 +15,21 @@ BrowserContext* WorkerDevToolsAgentHost::GetBrowserContext() {
|
| return rph ? rph->GetBrowserContext() : nullptr;
|
| }
|
|
|
| -void WorkerDevToolsAgentHost::SendMessageToAgent(
|
| - IPC::Message* message_raw) {
|
| - scoped_ptr<IPC::Message> message(message_raw);
|
| - if (state_ != WORKER_INSPECTED)
|
| - return;
|
| - if (RenderProcessHost* host = RenderProcessHost::FromID(worker_id_.first)) {
|
| - message->set_routing_id(worker_id_.second);
|
| - host->Send(message.release());
|
| - }
|
| -}
|
| -
|
| void WorkerDevToolsAgentHost::Attach() {
|
| if (state_ != WORKER_INSPECTED) {
|
| state_ = WORKER_INSPECTED;
|
| AttachToWorker();
|
| }
|
| - IPCDevToolsAgentHost::Attach();
|
| -}
|
| -
|
| -void WorkerDevToolsAgentHost::OnClientAttached(bool reattached) {
|
| - if (!reattached)
|
| - DevToolsAgentHostImpl::NotifyCallbacks(this, true);
|
| + if (RenderProcessHost* host = RenderProcessHost::FromID(worker_id_.first))
|
| + host->Send(new DevToolsAgentMsg_Attach(worker_id_.second, GetId()));
|
| + OnAttachedStateChanged(true);
|
| + DevToolsAgentHostImpl::NotifyCallbacks(this, true);
|
| }
|
|
|
| -void WorkerDevToolsAgentHost::OnClientDetached() {
|
| +void WorkerDevToolsAgentHost::Detach() {
|
| + if (RenderProcessHost* host = RenderProcessHost::FromID(worker_id_.first))
|
| + host->Send(new DevToolsAgentMsg_Detach(worker_id_.second));
|
| + OnAttachedStateChanged(false);
|
| if (state_ == WORKER_INSPECTED) {
|
| state_ = WORKER_UNINSPECTED;
|
| DetachFromWorker();
|
| @@ -50,6 +39,20 @@ void WorkerDevToolsAgentHost::OnClientDetached() {
|
| DevToolsAgentHostImpl::NotifyCallbacks(this, false);
|
| }
|
|
|
| +bool WorkerDevToolsAgentHost::DispatchProtocolMessage(
|
| + const std::string& message) {
|
| + if (state_ != WORKER_INSPECTED)
|
| + return true;
|
| + if (DevToolsAgentHostImpl::DispatchProtocolMessage(message))
|
| + return true;
|
| +
|
| + if (RenderProcessHost* host = RenderProcessHost::FromID(worker_id_.first)) {
|
| + host->Send(new DevToolsAgentMsg_DispatchOnInspectorBackend(
|
| + worker_id_.second, message));
|
| + }
|
| + return true;
|
| +}
|
| +
|
| bool WorkerDevToolsAgentHost::OnMessageReceived(
|
| const IPC::Message& msg) {
|
| DCHECK_CURRENTLY_ON(BrowserThread::UI);
|
| @@ -76,7 +79,11 @@ void WorkerDevToolsAgentHost::WorkerReadyForInspection() {
|
| DCHECK(IsAttached());
|
| state_ = WORKER_INSPECTED;
|
| AttachToWorker();
|
| - Reattach();
|
| + if (RenderProcessHost* host = RenderProcessHost::FromID(worker_id_.first)) {
|
| + host->Send(new DevToolsAgentMsg_Reattach(
|
| + worker_id_.second, GetId(), state_cookie_));
|
| + }
|
| + OnAttachedStateChanged(true);
|
| }
|
| }
|
|
|
| @@ -119,6 +126,9 @@ WorkerDevToolsAgentHost::~WorkerDevToolsAgentHost() {
|
| DCHECK_EQ(WORKER_TERMINATED, state_);
|
| }
|
|
|
| +void WorkerDevToolsAgentHost::OnAttachedStateChanged(bool attached) {
|
| +}
|
| +
|
| void WorkerDevToolsAgentHost::AttachToWorker() {
|
| if (RenderProcessHost* host = RenderProcessHost::FromID(worker_id_.first))
|
| host->AddRoute(worker_id_.second, this);
|
|
|