summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
Diffstat (limited to 'chrome')
-rw-r--r--chrome/browser/debugger/inspectable_tab_proxy.cc24
-rw-r--r--chrome/browser/debugger/inspectable_tab_proxy.h4
-rw-r--r--chrome/browser/extensions/extension_devtools_bridge.cc8
-rw-r--r--chrome/browser/extensions/extension_devtools_bridge.h4
-rw-r--r--chrome/browser/extensions/extension_devtools_browsertests.cc8
-rw-r--r--chrome/common/devtools_messages_internal.h12
-rw-r--r--chrome/renderer/devtools_agent.cc14
-rw-r--r--chrome/renderer/devtools_agent.h8
-rw-r--r--chrome/renderer/devtools_client.cc14
-rw-r--r--chrome/renderer/devtools_client.h8
10 files changed, 60 insertions, 44 deletions
diff --git a/chrome/browser/debugger/inspectable_tab_proxy.cc b/chrome/browser/debugger/inspectable_tab_proxy.cc
index 7d584dc..29e5d32 100644
--- a/chrome/browser/debugger/inspectable_tab_proxy.cc
+++ b/chrome/browser/debugger/inspectable_tab_proxy.cc
@@ -4,9 +4,7 @@
#include "chrome/browser/debugger/inspectable_tab_proxy.h"
-#include "base/json_reader.h"
#include "base/string_util.h"
-#include "base/values.h"
#include "chrome/browser/browser.h"
#include "chrome/browser/browser_list.h"
#include "chrome/browser/debugger/debugger_remote_service.h"
@@ -38,31 +36,19 @@ void DevToolsClientHostImpl::SendMessageToClient(
void DevToolsClientHostImpl::OnRpcMessage(const std::string& class_name,
const std::string& message_name,
- const std::string& msg) {
+ const std::string& param1,
+ const std::string& param2,
+ const std::string& param3) {
static const std::string kDebuggerAgentDelegate = "DebuggerAgentDelegate";
static const std::string kToolsAgentDelegate = "ToolsAgentDelegate";
static const std::string kDebuggerOutput = "DebuggerOutput";
static const std::string kFrameNavigate = "FrameNavigate";
- scoped_ptr<Value> message(JSONReader::Read(msg, false));
- if (!message->IsType(Value::TYPE_LIST)) {
- NOTREACHED(); // The RPC protocol has changed :(
- return;
- }
- ListValue* list_msg = static_cast<ListValue*>(message.get());
if (class_name == kDebuggerAgentDelegate && message_name == kDebuggerOutput) {
- std::string str;
- if (!list_msg->GetString(0, &str))
- return;
- DebuggerOutput(str);
+ DebuggerOutput(param1);
} else if (class_name == kToolsAgentDelegate &&
message_name == kFrameNavigate) {
- std::string url;
- if (!list_msg->GetString(0, &url)) {
- NOTREACHED();
- return;
- }
- FrameNavigate(url);
+ FrameNavigate(param1);
}
}
diff --git a/chrome/browser/debugger/inspectable_tab_proxy.h b/chrome/browser/debugger/inspectable_tab_proxy.h
index 454d248..13da2ec 100644
--- a/chrome/browser/debugger/inspectable_tab_proxy.h
+++ b/chrome/browser/debugger/inspectable_tab_proxy.h
@@ -83,7 +83,9 @@ class DevToolsClientHostImpl : public DevToolsClientHost {
// Message handling routines
void OnRpcMessage(const std::string& class_name,
const std::string& message_name,
- const std::string& msg);
+ const std::string& param1,
+ const std::string& param2,
+ const std::string& param3);
void DebuggerOutput(const std::string& msg);
void FrameNavigate(const std::string& url);
void TabClosed();
diff --git a/chrome/browser/extensions/extension_devtools_bridge.cc b/chrome/browser/extensions/extension_devtools_bridge.cc
index 2ac456f..2702394 100644
--- a/chrome/browser/extensions/extension_devtools_bridge.cc
+++ b/chrome/browser/extensions/extension_devtools_bridge.cc
@@ -85,17 +85,19 @@ static const char kTabUrlChangeEventMessageName[] = "TabUrlChangeEventMessage";
void ExtensionDevToolsBridge::OnRpcMessage(const std::string& class_name,
const std::string& message_name,
- const std::string& msg) {
+ const std::string& param1,
+ const std::string& param2,
+ const std::string& param3) {
DCHECK_EQ(MessageLoop::current()->type(), MessageLoop::TYPE_UI);
// TODO(jamesr): Update the filtering and message creation logic once
// the TimelineAgent lands in WebKit.
if (class_name == kTimelineAgentClassName) {
if (message_name == kPageEventMessageName) {
- std::string json = StringPrintf("[{\"record\": \"%s\"}]", msg.c_str());
+ std::string json = StringPrintf("[{\"record\": \"%s\"}]", param1.c_str());
profile_->GetExtensionMessageService()->
DispatchEventToRenderers(on_page_event_name_, json);
} else if (message_name == kTabUrlChangeEventMessageName) {
- std::string json = StringPrintf("[{\"record\": \"%s\"}]", msg.c_str());
+ std::string json = StringPrintf("[{\"record\": \"%s\"}]", param1.c_str());
profile_->GetExtensionMessageService()->
DispatchEventToRenderers(on_tab_url_change_event_name_, json);
}
diff --git a/chrome/browser/extensions/extension_devtools_bridge.h b/chrome/browser/extensions/extension_devtools_bridge.h
index b4cb98d..d6fd960 100644
--- a/chrome/browser/extensions/extension_devtools_bridge.h
+++ b/chrome/browser/extensions/extension_devtools_bridge.h
@@ -34,7 +34,9 @@ class ExtensionDevToolsBridge : public DevToolsClientHost {
private:
void OnRpcMessage(const std::string& class_name,
const std::string& message_name,
- const std::string& msg);
+ const std::string& param1,
+ const std::string& param2,
+ const std::string& param3);
// ID of the tab we are monitoring.
int tab_id_;
diff --git a/chrome/browser/extensions/extension_devtools_browsertests.cc b/chrome/browser/extensions/extension_devtools_browsertests.cc
index 9aaa071..19f7ba4 100644
--- a/chrome/browser/extensions/extension_devtools_browsertests.cc
+++ b/chrome/browser/extensions/extension_devtools_browsertests.cc
@@ -63,7 +63,7 @@ IN_PROC_BROWSER_TEST_F(ExtensionDevToolsBrowserTest, TimelineApi) {
TabContents* tab_contents = browser()->tabstrip_model()->GetTabContentsAt(0);
ASSERT_TRUE(tab_contents);
int tab_id = ExtensionTabUtil::GetTabId(tab_contents);
-
+
// Test setup.
bool result = false;
std::wstring register_listeners_js = StringPrintf(L"setListenersOnTab(%d)",
@@ -81,7 +81,7 @@ IN_PROC_BROWSER_TEST_F(ExtensionDevToolsBrowserTest, TimelineApi) {
// Test onTabUrlChange event.
DevToolsClientMsg_RpcMessage tabUrlChangeEventMessage(
- "TimelineAgentClass", "TabUrlChangeEventMessage", "{}");
+ "TimelineAgentClass", "TabUrlChangeEventMessage", "", "", "");
devtools_client_host->SendMessageToClient(tabUrlChangeEventMessage);
ui_test_utils::ExecuteJavaScriptAndExtractBool(
host->render_view_host(),
@@ -93,7 +93,7 @@ IN_PROC_BROWSER_TEST_F(ExtensionDevToolsBrowserTest, TimelineApi) {
// Test onPageEvent event.
result = false;
DevToolsClientMsg_RpcMessage pageEventMessage(
- "TimelineAgentClass", "PageEventMessage", "{}");
+ "TimelineAgentClass", "PageEventMessage", "", "", "");
devtools_client_host->SendMessageToClient(pageEventMessage);
ui_test_utils::ExecuteJavaScriptAndExtractBool(
host->render_view_host(), L"", L"testReceivePageEvent()", &result);
@@ -130,7 +130,7 @@ IN_PROC_BROWSER_TEST_F(ExtensionDevToolsBrowserTest, ProcessRefCounting) {
TabContents* tab_contents = browser()->tabstrip_model()->GetTabContentsAt(0);
ASSERT_TRUE(tab_contents);
int tab_id = ExtensionTabUtil::GetTabId(tab_contents);
-
+
// Test setup.
bool result = false;
std::wstring register_listeners_js = StringPrintf(L"setListenersOnTab(%d)",
diff --git a/chrome/common/devtools_messages_internal.h b/chrome/common/devtools_messages_internal.h
index 4411a21..e139c6c 100644
--- a/chrome/common/devtools_messages_internal.h
+++ b/chrome/common/devtools_messages_internal.h
@@ -49,10 +49,12 @@
IPC_BEGIN_MESSAGES(DevToolsClient)
// Sends glue-level Rpc message to the client.
- IPC_MESSAGE_CONTROL3(DevToolsClientMsg_RpcMessage,
+ IPC_MESSAGE_CONTROL5(DevToolsClientMsg_RpcMessage,
std::string /* class_name */,
std::string /* method_name */,
- std::string /* raw_msg */)
+ std::string /* p1 */,
+ std::string /* p2 */,
+ std::string /* p3 */)
IPC_END_MESSAGES(DevToolsClient)
@@ -69,10 +71,12 @@ IPC_BEGIN_MESSAGES(DevToolsAgent)
IPC_MESSAGE_CONTROL0(DevToolsAgentMsg_Detach)
// Sends glue-level Rpc message to the agent.
- IPC_MESSAGE_CONTROL3(DevToolsAgentMsg_RpcMessage,
+ IPC_MESSAGE_CONTROL5(DevToolsAgentMsg_RpcMessage,
std::string /* class_name */,
std::string /* method_name */,
- std::string /* raw_msg */)
+ std::string /* p1 */,
+ std::string /* p2 */,
+ std::string /* p3 */)
// Send debugger command to the debugger agent. Debugger commands should
// be handled on IO thread(while all other devtools messages are handled in
diff --git a/chrome/renderer/devtools_agent.cc b/chrome/renderer/devtools_agent.cc
index aef7125..74af788 100644
--- a/chrome/renderer/devtools_agent.cc
+++ b/chrome/renderer/devtools_agent.cc
@@ -44,10 +44,13 @@ bool DevToolsAgent::OnMessageReceived(const IPC::Message& message) {
void DevToolsAgent::SendMessageToClient(const std::string& class_name,
const std::string& method_name,
- const std::string& raw_msg) {
+ const std::string& param1,
+ const std::string& param2,
+ const std::string& param3) {
IPC::Message* m = new ViewHostMsg_ForwardToDevToolsClient(
routing_id_,
- DevToolsClientMsg_RpcMessage(class_name, method_name, raw_msg));
+ DevToolsClientMsg_RpcMessage(class_name, method_name, param1, param2,
+ param3));
view_->Send(m);
}
@@ -85,10 +88,13 @@ void DevToolsAgent::OnDetach() {
void DevToolsAgent::OnRpcMessage(const std::string& class_name,
const std::string& method_name,
- const std::string& raw_msg) {
+ const std::string& param1,
+ const std::string& param2,
+ const std::string& param3) {
WebDevToolsAgent* web_agent = GetWebAgent();
if (web_agent) {
- web_agent->DispatchMessageFromClient(class_name, method_name, raw_msg);
+ web_agent->DispatchMessageFromClient(class_name, method_name, param1,
+ param2, param3);
}
}
diff --git a/chrome/renderer/devtools_agent.h b/chrome/renderer/devtools_agent.h
index 985d677..25906ae 100644
--- a/chrome/renderer/devtools_agent.h
+++ b/chrome/renderer/devtools_agent.h
@@ -34,7 +34,9 @@ class DevToolsAgent : public WebDevToolsAgentDelegate {
// WebDevToolsAgentDelegate implementation
virtual void SendMessageToClient(const std::string& class_name,
const std::string& method_name,
- const std::string& raw_msg);
+ const std::string& param1,
+ const std::string& param2,
+ const std::string& param3);
virtual int GetHostId();
virtual void ForceRepaint();
@@ -52,7 +54,9 @@ class DevToolsAgent : public WebDevToolsAgentDelegate {
void OnDetach();
void OnRpcMessage(const std::string& class_name,
const std::string& method_name,
- const std::string& raw_msg);
+ const std::string& param1,
+ const std::string& param2,
+ const std::string& param3);
void OnInspectElement(int x, int y);
static std::map<int, DevToolsAgent*> agent_for_routing_id_;
diff --git a/chrome/renderer/devtools_client.cc b/chrome/renderer/devtools_client.cc
index e2ccb60..01de15f 100644
--- a/chrome/renderer/devtools_client.cc
+++ b/chrome/renderer/devtools_client.cc
@@ -45,8 +45,11 @@ bool DevToolsClient::OnMessageReceived(const IPC::Message& message) {
void DevToolsClient::SendMessageToAgent(const std::string& class_name,
const std::string& method_name,
- const std::string& raw_msg) {
- Send(DevToolsAgentMsg_RpcMessage(class_name, method_name, raw_msg));
+ const std::string& param1,
+ const std::string& param2,
+ const std::string& param3) {
+ Send(DevToolsAgentMsg_RpcMessage(class_name, method_name, param1, param2,
+ param3));
}
void DevToolsClient::SendDebuggerCommandToAgent(const std::string& command) {
@@ -81,6 +84,9 @@ void DevToolsClient::ToggleInspectElementMode(bool enabled) {
void DevToolsClient::OnRpcMessage(const std::string& class_name,
const std::string& method_name,
- const std::string& raw_msg) {
- web_tools_client_->DispatchMessageFromAgent(class_name, method_name, raw_msg);
+ const std::string& param1,
+ const std::string& param2,
+ const std::string& param3) {
+ web_tools_client_->DispatchMessageFromAgent(class_name, method_name, param1,
+ param2, param3);
}
diff --git a/chrome/renderer/devtools_client.h b/chrome/renderer/devtools_client.h
index 200e068..188bcea 100644
--- a/chrome/renderer/devtools_client.h
+++ b/chrome/renderer/devtools_client.h
@@ -35,7 +35,9 @@ class DevToolsClient : public WebDevToolsClientDelegate {
// WebDevToolsClient::Delegate implementation
virtual void SendMessageToAgent(const std::string& class_name,
const std::string& method_name,
- const std::string& raw_msg);
+ const std::string& param1,
+ const std::string& param2,
+ const std::string& param3);
virtual void SendDebuggerCommandToAgent(const std::string& command);
virtual void ActivateWindow();
@@ -47,7 +49,9 @@ class DevToolsClient : public WebDevToolsClientDelegate {
private:
void OnRpcMessage(const std::string& class_name,
const std::string& method_name,
- const std::string& raw_msg);
+ const std::string& param1,
+ const std::string& param2,
+ const std::string& param3);
// Sends message to DevToolsAgent.
void Send(const IPC::Message& tools_agent_message);