diff options
author | yurys@chromium.org <yurys@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-27 08:26:06 +0000 |
---|---|---|
committer | yurys@chromium.org <yurys@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-27 08:26:06 +0000 |
commit | bf7cc538f3e6f04f043fb5c56457597e2702fda7 (patch) | |
tree | 31745bc501a32190b9eedde0b9783a5395405bbb /content/worker/webworkerclient_proxy.h | |
parent | 69b5cc1cd49d108cdb7ced431f8caf56e8d3bd43 (diff) | |
download | chromium_src-bf7cc538f3e6f04f043fb5c56457597e2702fda7.zip chromium_src-bf7cc538f3e6f04f043fb5c56457597e2702fda7.tar.gz chromium_src-bf7cc538f3e6f04f043fb5c56457597e2702fda7.tar.bz2 |
This change provides initial support for sending DevTools messages between Worker and Page processes.
On the Page side devtools messages are handled by WorkerDevtoolsAgentProxy. It implements WebWorkerBase::DevToolsDelegate interface which isolates worker stuff under content/ from DevTools specifics.
In the worker process it's WorkerDevtoolsAgent that is responsible for sending/receiving devtools messages. It implements WebWorkerStub::DevToolsDelegate and WebWorkerClientProxy::DevToolsDelegate which insulate worker stuff under content/ from the devtools implementation details.
WorkerDevtoolsAgentProxy and WorkerDevtoolsAgent are counterparts of WebWorkerProxy and WebWorkerStub. Since devtools is not a part of HTML5 the new classes live under chrome/
ContentWorkerClient is introduced for notifying embedder about certain events when worker clients can be installed.
BUG=13684
TEST=None
Review URL: http://codereview.chromium.org/6990059
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86991 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/worker/webworkerclient_proxy.h')
-rw-r--r-- | content/worker/webworkerclient_proxy.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/content/worker/webworkerclient_proxy.h b/content/worker/webworkerclient_proxy.h index 66268a2..31c0340 100644 --- a/content/worker/webworkerclient_proxy.h +++ b/content/worker/webworkerclient_proxy.h @@ -20,6 +20,7 @@ class WebWorker; } class WebWorkerStubBase; +class WorkerDevToolsAgent; // This class receives IPCs from the renderer and calls the WebCore::Worker // implementation (after the data types have been converted by glue code). It @@ -78,9 +79,14 @@ class WebWorkerClientProxy : public WebKit::WebWorkerClient { long long size, bool create, WebKit::WebFileSystemCallbacks* callbacks); + virtual void dispatchDevToolsMessage(const WebKit::WebString&); void EnsureWorkerContextTerminates(); + void set_devtools_agent(WorkerDevToolsAgent* devtools_agent) { + devtools_agent_ = devtools_agent; + } + private: bool Send(IPC::Message* message); @@ -88,6 +94,7 @@ class WebWorkerClientProxy : public WebKit::WebWorkerClient { int appcache_host_id_; WebWorkerStubBase* stub_; ScopedRunnableMethodFactory<WebWorkerClientProxy> kill_process_factory_; + WorkerDevToolsAgent* devtools_agent_; DISALLOW_COPY_AND_ASSIGN(WebWorkerClientProxy); }; |