| 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/WebString.h" |
| 13 #include "webkit/glue/webdevtoolsclient.h" | 14 #include "webkit/glue/webdevtoolsclient.h" |
| 14 | 15 |
| 16 using WebKit::WebString; |
| 17 |
| 15 DevToolsClient::DevToolsClient(RenderView* view) | 18 DevToolsClient::DevToolsClient(RenderView* view) |
| 16 : render_view_(view) { | 19 : render_view_(view) { |
| 17 const CommandLine& command_line = *CommandLine::ForCurrentProcess(); | 20 const CommandLine& command_line = *CommandLine::ForCurrentProcess(); |
| 18 web_tools_client_.reset( | 21 web_tools_client_.reset( |
| 19 WebDevToolsClient::Create( | 22 WebDevToolsClient::Create( |
| 20 view->webview(), | 23 view->webview(), |
| 21 this, | 24 this, |
| 22 WideToASCII(command_line.GetSwitchValue(switches::kLang)))); | 25 WideToUTF16Hack(command_line.GetSwitchValue(switches::kLang)))); |
| 23 } | 26 } |
| 24 | 27 |
| 25 DevToolsClient::~DevToolsClient() { | 28 DevToolsClient::~DevToolsClient() { |
| 26 } | 29 } |
| 27 | 30 |
| 28 void DevToolsClient::Send(const IPC::Message& tools_agent_message) { | 31 void DevToolsClient::Send(const IPC::Message& tools_agent_message) { |
| 29 render_view_->Send(new ViewHostMsg_ForwardToDevToolsAgent( | 32 render_view_->Send(new ViewHostMsg_ForwardToDevToolsAgent( |
| 30 render_view_->routing_id(), | 33 render_view_->routing_id(), |
| 31 tools_agent_message)); | 34 tools_agent_message)); |
| 32 } | 35 } |
| 33 | 36 |
| 34 bool DevToolsClient::OnMessageReceived(const IPC::Message& message) { | 37 bool DevToolsClient::OnMessageReceived(const IPC::Message& message) { |
| 35 DCHECK(RenderThread::current()->message_loop() == MessageLoop::current()); | 38 DCHECK(RenderThread::current()->message_loop() == MessageLoop::current()); |
| 36 | 39 |
| 37 bool handled = true; | 40 bool handled = true; |
| 38 IPC_BEGIN_MESSAGE_MAP(DevToolsClient, message) | 41 IPC_BEGIN_MESSAGE_MAP(DevToolsClient, message) |
| 39 IPC_MESSAGE_HANDLER(DevToolsClientMsg_RpcMessage, OnRpcMessage) | 42 IPC_MESSAGE_HANDLER(DevToolsClientMsg_RpcMessage, OnRpcMessage) |
| 40 IPC_MESSAGE_UNHANDLED(handled = false); | 43 IPC_MESSAGE_UNHANDLED(handled = false); |
| 41 IPC_END_MESSAGE_MAP() | 44 IPC_END_MESSAGE_MAP() |
| 42 | 45 |
| 43 return handled; | 46 return handled; |
| 44 } | 47 } |
| 45 | 48 |
| 46 void DevToolsClient::SendMessageToAgent(const std::string& class_name, | 49 void DevToolsClient::SendMessageToAgent(const WebString& class_name, |
| 47 const std::string& method_name, | 50 const WebString& method_name, |
| 48 const std::string& param1, | 51 const WebString& param1, |
| 49 const std::string& param2, | 52 const WebString& param2, |
| 50 const std::string& param3) { | 53 const WebString& param3) { |
| 51 Send(DevToolsAgentMsg_RpcMessage(class_name, method_name, param1, param2, | 54 Send(DevToolsAgentMsg_RpcMessage( |
| 52 param3)); | 55 class_name.utf8(), |
| 56 method_name.utf8(), |
| 57 param1.utf8(), |
| 58 param2.utf8(), |
| 59 param3.utf8())); |
| 53 } | 60 } |
| 54 | 61 |
| 55 void DevToolsClient::SendDebuggerCommandToAgent(const std::string& command) { | 62 void DevToolsClient::SendDebuggerCommandToAgent(const WebString& command) { |
| 56 Send(DevToolsAgentMsg_DebuggerCommand(command)); | 63 Send(DevToolsAgentMsg_DebuggerCommand(command.utf8())); |
| 57 } | 64 } |
| 58 | 65 |
| 59 void DevToolsClient::ActivateWindow() { | 66 void DevToolsClient::ActivateWindow() { |
| 60 render_view_->Send(new ViewHostMsg_ActivateDevToolsWindow( | 67 render_view_->Send(new ViewHostMsg_ActivateDevToolsWindow( |
| 61 render_view_->routing_id())); | 68 render_view_->routing_id())); |
| 62 } | 69 } |
| 63 | 70 |
| 64 void DevToolsClient::CloseWindow() { | 71 void DevToolsClient::CloseWindow() { |
| 65 render_view_->Send(new ViewHostMsg_CloseDevToolsWindow( | 72 render_view_->Send(new ViewHostMsg_CloseDevToolsWindow( |
| 66 render_view_->routing_id())); | 73 render_view_->routing_id())); |
| (...skipping 13 matching lines...) Expand all Loading... |
| 80 render_view_->Send(new ViewHostMsg_ToggleInspectElementMode( | 87 render_view_->Send(new ViewHostMsg_ToggleInspectElementMode( |
| 81 render_view_->routing_id(), enabled)); | 88 render_view_->routing_id(), enabled)); |
| 82 } | 89 } |
| 83 | 90 |
| 84 | 91 |
| 85 void DevToolsClient::OnRpcMessage(const std::string& class_name, | 92 void DevToolsClient::OnRpcMessage(const std::string& class_name, |
| 86 const std::string& method_name, | 93 const std::string& method_name, |
| 87 const std::string& param1, | 94 const std::string& param1, |
| 88 const std::string& param2, | 95 const std::string& param2, |
| 89 const std::string& param3) { | 96 const std::string& param3) { |
| 90 web_tools_client_->DispatchMessageFromAgent(class_name, method_name, param1, | 97 web_tools_client_->DispatchMessageFromAgent( |
| 91 param2, param3); | 98 WebString::fromUTF8(class_name), |
| 99 WebString::fromUTF8(method_name), |
| 100 WebString::fromUTF8(param1), |
| 101 WebString::fromUTF8(param2), |
| 102 WebString::fromUTF8(param3)); |
| 92 } | 103 } |
| OLD | NEW |