| OLD | NEW |
| 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/renderer/devtools_client.h" | 5 #include "chrome/renderer/devtools_client.h" |
| 6 | 6 |
| 7 #include "app/app_switches.h" | 7 #include "app/app_switches.h" |
| 8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
| 9 #include "chrome/common/devtools_messages.h" | 9 #include "chrome/common/devtools_messages.h" |
| 10 #include "chrome/common/render_messages.h" | 10 #include "chrome/common/render_messages.h" |
| 11 #include "chrome/renderer/render_thread.h" | 11 #include "chrome/renderer/render_thread.h" |
| 12 #include "chrome/renderer/render_view.h" | 12 #include "chrome/renderer/render_view.h" |
| 13 #include "webkit/api/public/WebDevToolsFrontend.h" |
| 13 #include "webkit/api/public/WebString.h" | 14 #include "webkit/api/public/WebString.h" |
| 14 #include "webkit/glue/webdevtoolsclient.h" | |
| 15 | 15 |
| 16 using WebKit::WebDevToolsFrontend; |
| 16 using WebKit::WebString; | 17 using WebKit::WebString; |
| 17 | 18 |
| 18 DevToolsClient::DevToolsClient(RenderView* view) | 19 DevToolsClient::DevToolsClient(RenderView* view) |
| 19 : render_view_(view) { | 20 : render_view_(view) { |
| 20 const CommandLine& command_line = *CommandLine::ForCurrentProcess(); | 21 const CommandLine& command_line = *CommandLine::ForCurrentProcess(); |
| 21 web_tools_client_.reset( | 22 web_tools_frontend_.reset( |
| 22 WebDevToolsClient::Create( | 23 WebDevToolsFrontend::create( |
| 23 view->webview(), | 24 view->webview(), |
| 24 this, | 25 this, |
| 25 WideToUTF16Hack(command_line.GetSwitchValue(switches::kLang)))); | 26 WideToUTF16Hack(command_line.GetSwitchValue(switches::kLang)))); |
| 26 } | 27 } |
| 27 | 28 |
| 28 DevToolsClient::~DevToolsClient() { | 29 DevToolsClient::~DevToolsClient() { |
| 29 } | 30 } |
| 30 | 31 |
| 31 void DevToolsClient::Send(const IPC::Message& tools_agent_message) { | 32 void DevToolsClient::Send(const IPC::Message& tools_agent_message) { |
| 32 render_view_->Send(new ViewHostMsg_ForwardToDevToolsAgent( | 33 render_view_->Send(new ViewHostMsg_ForwardToDevToolsAgent( |
| 33 render_view_->routing_id(), | 34 render_view_->routing_id(), |
| 34 tools_agent_message)); | 35 tools_agent_message)); |
| 35 } | 36 } |
| 36 | 37 |
| 37 bool DevToolsClient::OnMessageReceived(const IPC::Message& message) { | 38 bool DevToolsClient::OnMessageReceived(const IPC::Message& message) { |
| 38 DCHECK(RenderThread::current()->message_loop() == MessageLoop::current()); | 39 DCHECK(RenderThread::current()->message_loop() == MessageLoop::current()); |
| 39 | 40 |
| 40 bool handled = true; | 41 bool handled = true; |
| 41 IPC_BEGIN_MESSAGE_MAP(DevToolsClient, message) | 42 IPC_BEGIN_MESSAGE_MAP(DevToolsClient, message) |
| 42 IPC_MESSAGE_HANDLER(DevToolsClientMsg_RpcMessage, OnRpcMessage) | 43 IPC_MESSAGE_HANDLER(DevToolsClientMsg_RpcMessage, OnRpcMessage) |
| 43 IPC_MESSAGE_UNHANDLED(handled = false); | 44 IPC_MESSAGE_UNHANDLED(handled = false); |
| 44 IPC_END_MESSAGE_MAP() | 45 IPC_END_MESSAGE_MAP() |
| 45 | 46 |
| 46 return handled; | 47 return handled; |
| 47 } | 48 } |
| 48 | 49 |
| 49 void DevToolsClient::SendMessageToAgent(const WebString& class_name, | 50 void DevToolsClient::sendMessageToAgent(const WebString& class_name, |
| 50 const WebString& method_name, | 51 const WebString& method_name, |
| 51 const WebString& param1, | 52 const WebString& param1, |
| 52 const WebString& param2, | 53 const WebString& param2, |
| 53 const WebString& param3) { | 54 const WebString& param3) { |
| 54 Send(DevToolsAgentMsg_RpcMessage( | 55 Send(DevToolsAgentMsg_RpcMessage( |
| 55 class_name.utf8(), | 56 class_name.utf8(), |
| 56 method_name.utf8(), | 57 method_name.utf8(), |
| 57 param1.utf8(), | 58 param1.utf8(), |
| 58 param2.utf8(), | 59 param2.utf8(), |
| 59 param3.utf8())); | 60 param3.utf8())); |
| 60 } | 61 } |
| 61 | 62 |
| 62 void DevToolsClient::SendDebuggerCommandToAgent(const WebString& command) { | 63 void DevToolsClient::sendDebuggerCommandToAgent(const WebString& command) { |
| 63 Send(DevToolsAgentMsg_DebuggerCommand(command.utf8())); | 64 Send(DevToolsAgentMsg_DebuggerCommand(command.utf8())); |
| 64 } | 65 } |
| 65 | 66 |
| 66 void DevToolsClient::ActivateWindow() { | 67 void DevToolsClient::activateWindow() { |
| 67 render_view_->Send(new ViewHostMsg_ActivateDevToolsWindow( | 68 render_view_->Send(new ViewHostMsg_ActivateDevToolsWindow( |
| 68 render_view_->routing_id())); | 69 render_view_->routing_id())); |
| 69 } | 70 } |
| 70 | 71 |
| 71 void DevToolsClient::CloseWindow() { | 72 void DevToolsClient::closeWindow() { |
| 72 render_view_->Send(new ViewHostMsg_CloseDevToolsWindow( | 73 render_view_->Send(new ViewHostMsg_CloseDevToolsWindow( |
| 73 render_view_->routing_id())); | 74 render_view_->routing_id())); |
| 74 } | 75 } |
| 75 | 76 |
| 76 void DevToolsClient::DockWindow() { | 77 void DevToolsClient::dockWindow() { |
| 77 render_view_->Send(new ViewHostMsg_DockDevToolsWindow( | 78 render_view_->Send(new ViewHostMsg_DockDevToolsWindow( |
| 78 render_view_->routing_id())); | 79 render_view_->routing_id())); |
| 79 } | 80 } |
| 80 | 81 |
| 81 void DevToolsClient::UndockWindow() { | 82 void DevToolsClient::undockWindow() { |
| 82 render_view_->Send(new ViewHostMsg_UndockDevToolsWindow( | 83 render_view_->Send(new ViewHostMsg_UndockDevToolsWindow( |
| 83 render_view_->routing_id())); | 84 render_view_->routing_id())); |
| 84 } | 85 } |
| 85 | 86 |
| 86 void DevToolsClient::ToggleInspectElementMode(bool enabled) { | 87 void DevToolsClient::toggleInspectElementMode(bool enabled) { |
| 87 render_view_->Send(new ViewHostMsg_ToggleInspectElementMode( | 88 render_view_->Send(new ViewHostMsg_ToggleInspectElementMode( |
| 88 render_view_->routing_id(), enabled)); | 89 render_view_->routing_id(), enabled)); |
| 89 } | 90 } |
| 90 | 91 |
| 91 | 92 |
| 92 void DevToolsClient::OnRpcMessage(const std::string& class_name, | 93 void DevToolsClient::OnRpcMessage(const std::string& class_name, |
| 93 const std::string& method_name, | 94 const std::string& method_name, |
| 94 const std::string& param1, | 95 const std::string& param1, |
| 95 const std::string& param2, | 96 const std::string& param2, |
| 96 const std::string& param3) { | 97 const std::string& param3) { |
| 97 web_tools_client_->DispatchMessageFromAgent( | 98 web_tools_frontend_->dispatchMessageFromAgent( |
| 98 WebString::fromUTF8(class_name), | 99 WebString::fromUTF8(class_name), |
| 99 WebString::fromUTF8(method_name), | 100 WebString::fromUTF8(method_name), |
| 100 WebString::fromUTF8(param1), | 101 WebString::fromUTF8(param1), |
| 101 WebString::fromUTF8(param2), | 102 WebString::fromUTF8(param2), |
| 102 WebString::fromUTF8(param3)); | 103 WebString::fromUTF8(param3)); |
| 103 } | 104 } |
| OLD | NEW |