diff options
author | mnaganov@chromium.org <mnaganov@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-12-08 05:31:06 +0000 |
---|---|---|
committer | mnaganov@chromium.org <mnaganov@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-12-08 05:31:06 +0000 |
commit | fde8996d41effb2b1ce7ab3ab2da68060b05d352 (patch) | |
tree | 8ec8737fbc808e8827b2ec60291d252d2d995ee4 /chrome | |
parent | 30aaf483c173bf7dec1f46335a7d086aaf1c1ac5 (diff) | |
download | chromium_src-fde8996d41effb2b1ce7ab3ab2da68060b05d352.zip chromium_src-fde8996d41effb2b1ce7ab3ab2da68060b05d352.tar.gz chromium_src-fde8996d41effb2b1ce7ab3ab2da68060b05d352.tar.bz2 |
Revert 34040 - DevTools: make possible profiling of scripts doing heavy calculations.
Start / stop profiling commands are now sent using debugger protocol,
effectively breaking into script execution. Getting profiler log and
active modules is executed on IO thread.
BUG=28689
TEST=none
Review URL: http://codereview.chromium.org/460018
TBR=mnaganov@chromium.org
interactive_ui_tests all failed
Review URL: http://codereview.chromium.org/467043
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34041 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/renderer/devtools_agent.cc | 16 | ||||
-rw-r--r-- | chrome/renderer/devtools_agent_filter.cc | 45 | ||||
-rw-r--r-- | chrome/renderer/devtools_agent_filter.h | 22 |
3 files changed, 6 insertions, 77 deletions
diff --git a/chrome/renderer/devtools_agent.cc b/chrome/renderer/devtools_agent.cc index d1e81e2..aad6ceb 100644 --- a/chrome/renderer/devtools_agent.cc +++ b/chrome/renderer/devtools_agent.cc @@ -6,7 +6,6 @@ #include "chrome/common/devtools_messages.h" #include "chrome/common/render_messages.h" -#include "chrome/renderer/devtools_agent_filter.h" #include "chrome/renderer/render_view.h" #include "third_party/WebKit/WebKit/chromium/public/WebDevToolsAgent.h" #include "third_party/WebKit/WebKit/chromium/public/WebPoint.h" @@ -152,18 +151,3 @@ WebDevToolsAgent* DevToolsAgent::GetWebAgent() { return NULL; return web_view->devToolsAgent(); } - -// static -void WebKit::WebDevToolsAgentClient::sendMessageToFrontendOnIOThread( - const WebString& class_name, - const WebString& method_name, - const WebString& param1, - const WebString& param2, - const WebString& param3) { - DevToolsAgentFilter::SendRpcMessage( - class_name.utf8(), - method_name.utf8(), - param1.utf8(), - param2.utf8(), - param3.utf8()); -} diff --git a/chrome/renderer/devtools_agent_filter.cc b/chrome/renderer/devtools_agent_filter.cc index 375c743..93b6c75 100644 --- a/chrome/renderer/devtools_agent_filter.cc +++ b/chrome/renderer/devtools_agent_filter.cc @@ -6,7 +6,6 @@ #include "base/message_loop.h" #include "chrome/common/devtools_messages.h" -#include "chrome/common/render_messages.h" #include "chrome/renderer/devtools_agent.h" #include "chrome/renderer/plugin_channel_host.h" #include "chrome/renderer/render_view.h" @@ -25,13 +24,8 @@ void DevToolsAgentFilter::DispatchMessageLoop() { current->SetNestableTasksAllowed(old_state); } -// static -IPC::Channel* DevToolsAgentFilter::channel_ = NULL; -// static -int DevToolsAgentFilter::current_routing_id_ = 0; - DevToolsAgentFilter::DevToolsAgentFilter() - : message_handled_(false) { + : current_routing_id_(0) { WebDevToolsAgent::setMessageLoopDispatchHandler( &DevToolsAgentFilter::DispatchMessageLoop); } @@ -41,16 +35,15 @@ DevToolsAgentFilter::~DevToolsAgentFilter() { bool DevToolsAgentFilter::OnMessageReceived(const IPC::Message& message) { // Dispatch debugger commands directly from IO. - message_handled_ = true; + bool handled = true; current_routing_id_ = message.routing_id(); IPC_BEGIN_MESSAGE_MAP(DevToolsAgentFilter, message) IPC_MESSAGE_HANDLER(DevToolsAgentMsg_DebuggerCommand, OnDebuggerCommand) IPC_MESSAGE_HANDLER(DevToolsAgentMsg_DebuggerPauseScript, OnDebuggerPauseScript) - IPC_MESSAGE_HANDLER(DevToolsAgentMsg_RpcMessage, OnRpcMessage) - IPC_MESSAGE_UNHANDLED(message_handled_ = false) + IPC_MESSAGE_UNHANDLED(handled = false) IPC_END_MESSAGE_MAP() - return message_handled_; + return handled; } void DevToolsAgentFilter::OnDebuggerCommand(const std::string& command) { @@ -61,33 +54,3 @@ void DevToolsAgentFilter::OnDebuggerCommand(const std::string& command) { void DevToolsAgentFilter::OnDebuggerPauseScript() { WebDevToolsAgent::debuggerPauseScript(); } - -void DevToolsAgentFilter::OnRpcMessage(const std::string& class_name, - const std::string& method_name, - const std::string& param1, - const std::string& param2, - const std::string& param3) { - message_handled_ = WebDevToolsAgent::dispatchMessageFromFrontendOnIOThread( - WebString::fromUTF8(class_name), - WebString::fromUTF8(method_name), - WebString::fromUTF8(param1), - WebString::fromUTF8(param2), - WebString::fromUTF8(param3)); -} - -// static -void DevToolsAgentFilter::SendRpcMessage(const std::string& class_name, - const std::string& method_name, - const std::string& param1, - const std::string& param2, - const std::string& param3) { - IPC::Message* m = new ViewHostMsg_ForwardToDevToolsClient( - current_routing_id_, - DevToolsClientMsg_RpcMessage( - class_name, - method_name, - param1, - param2, - param3)); - channel_->Send(m); -} diff --git a/chrome/renderer/devtools_agent_filter.h b/chrome/renderer/devtools_agent_filter.h index ac5fd0c..4bf4460 100644 --- a/chrome/renderer/devtools_agent_filter.h +++ b/chrome/renderer/devtools_agent_filter.h @@ -22,36 +22,18 @@ class DevToolsAgentFilter : public IPC::ChannelProxy::MessageFilter { DevToolsAgentFilter(); virtual ~DevToolsAgentFilter(); - static void SendRpcMessage(const std::string& class_name, - const std::string& method_name, - const std::string& param1, - const std::string& param2, - const std::string& param3); - private: // IPC::ChannelProxy::MessageFilter override. Called on IO thread. virtual bool OnMessageReceived(const IPC::Message& message); - virtual void OnFilterAdded(IPC::Channel* channel) { channel_ = channel; } - static void DispatchMessageLoop(); // OnDebuggerCommand will be executed in the IO thread so that we can // handle debug messages even when v8 is stopped. void OnDebuggerCommand(const std::string& command); void OnDebuggerPauseScript(); - void OnRpcMessage(const std::string& class_name, - const std::string& method_name, - const std::string& param1, - const std::string& param2, - const std::string& param3); - - bool message_handled_; - - // Made static to allow DevToolsAgent to use it for replying directly - // from IO thread. - static int current_routing_id_; - static IPC::Channel* channel_; + + int current_routing_id_; DISALLOW_COPY_AND_ASSIGN(DevToolsAgentFilter); }; |