Index: content/renderer/webworker_proxy.cc |
diff --git a/content/renderer/webworker_proxy.cc b/content/renderer/webworker_proxy.cc |
index 9817f0fab730d5ae8f0767da3008a45291aa229b..f72af50a7a565b80353c741f4225544b738e48ee 100644 |
--- a/content/renderer/webworker_proxy.cc |
+++ b/content/renderer/webworker_proxy.cc |
@@ -5,9 +5,11 @@ |
#include "content/renderer/webworker_proxy.h" |
#include "content/common/child_thread.h" |
+#include "content/common/content_client.h" |
#include "content/common/view_messages.h" |
#include "content/common/webmessageportchannel_impl.h" |
#include "content/common/worker_messages.h" |
+#include "content/worker/content_worker_client.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebURL.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebWorkerClient.h" |
@@ -28,6 +30,8 @@ WebWorkerProxy::WebWorkerProxy( |
client_(client) { |
// TODO(atwilson): Change to pass in a real document_id when we support nested |
// workers. |
+ content::GetContentClient()->worker()->WebWorkerProxyCreated(this, route_id_, |
+ client_); |
} |
WebWorkerProxy::~WebWorkerProxy() { |
@@ -84,10 +88,32 @@ void WebWorkerProxy::workerObjectDestroyed() { |
void WebWorkerProxy::clientDestroyed() { |
} |
+void WebWorkerProxy::attachDevTools() |
+{ |
+ if (devtools_delegate_) |
+ devtools_delegate_->AttachDevTools(); |
+} |
+ |
+void WebWorkerProxy::detachDevTools() |
+{ |
+ if (devtools_delegate_) |
+ devtools_delegate_->DetachDevTools(); |
+} |
+ |
+void WebWorkerProxy::dispatchDevToolsMessage(const WebString& message) |
+{ |
+ if (devtools_delegate_) |
+ devtools_delegate_->SendDevToolsMessage(message.utf8()); |
+} |
+ |
bool WebWorkerProxy::OnMessageReceived(const IPC::Message& message) { |
if (!client_) |
return false; |
+ if (devtools_delegate_ && |
+ devtools_delegate_->OnMessageReceived(message)) |
+ return true; |
+ |
bool handled = true; |
IPC_BEGIN_MESSAGE_MAP(WebWorkerProxy, message) |
IPC_MESSAGE_HANDLER(ViewMsg_WorkerCreated, OnWorkerCreated) |