summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions
diff options
context:
space:
mode:
authorjamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-12 23:57:18 +0000
committerjamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-12 23:57:18 +0000
commit2f7f4d591192cfdebee227b72e3cf57c7c604450 (patch)
tree181fc0fc257b6203c3ca2affb33f4b143de5fd3c /chrome/browser/extensions
parent5a8459aa45b09a6cdcdd90ca190ba353799e3464 (diff)
downloadchromium_src-2f7f4d591192cfdebee227b72e3cf57c7c604450.zip
chromium_src-2f7f4d591192cfdebee227b72e3cf57c7c604450.tar.gz
chromium_src-2f7f4d591192cfdebee227b72e3cf57c7c604450.tar.bz2
Enables the sending of Timeline Agent and Resource messages to the devtools api in extensions.
Review URL: http://codereview.chromium.org/267013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28761 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions')
-rw-r--r--chrome/browser/extensions/extension_devtools_bridge.cc33
-rw-r--r--chrome/browser/extensions/extension_devtools_bridge.h1
-rw-r--r--chrome/browser/extensions/extension_devtools_browsertests.cc13
-rw-r--r--chrome/browser/extensions/extension_devtools_events.cc9
-rw-r--r--chrome/browser/extensions/extension_devtools_events.h3
5 files changed, 16 insertions, 43 deletions
diff --git a/chrome/browser/extensions/extension_devtools_bridge.cc b/chrome/browser/extensions/extension_devtools_bridge.cc
index 2702394..da5885a 100644
--- a/chrome/browser/extensions/extension_devtools_bridge.cc
+++ b/chrome/browser/extensions/extension_devtools_bridge.cc
@@ -21,8 +21,6 @@ ExtensionDevToolsBridge::ExtensionDevToolsBridge(int tab_id,
profile_(profile),
on_page_event_name_(
ExtensionDevToolsEvents::OnPageEventNameForTab(tab_id)),
- on_tab_url_change_event_name_(
- ExtensionDevToolsEvents::OnTabUrlChangeEventNameForTab(tab_id)),
on_tab_close_event_name_(
ExtensionDevToolsEvents::OnTabCloseEventNameForTab(tab_id)) {
extension_devtools_manager_ = profile_->GetExtensionDevToolsManager();
@@ -42,8 +40,12 @@ bool ExtensionDevToolsBridge::RegisterAsDevToolsClientHost() {
if (ExtensionTabUtil::GetTabById(tab_id_, profile_, &browser, &tab_strip,
&contents, &tab_index)) {
inspected_rvh_ = contents->render_view_host();
- DevToolsManager::GetInstance()->RegisterDevToolsClientHostFor(
+ DevToolsManager* devtools_manager = DevToolsManager::GetInstance();
+ devtools_manager->RegisterDevToolsClientHostFor(
inspected_rvh_, this);
+ devtools_manager->ForwardToDevToolsAgent(
+ this,
+ DevToolsAgentMsg_SetApuAgentEnabled(true));
return true;
}
return false;
@@ -64,6 +66,8 @@ void ExtensionDevToolsBridge::UnregisterAsDevToolsClientHost() {
void ExtensionDevToolsBridge::InspectedTabClosing() {
DCHECK_EQ(MessageLoop::current()->type(), MessageLoop::TYPE_UI);
+ // TODO(knorton): Remove this event in favor of the standard tabs.onRemoved
+ // event in extensions.
std::string json("[{}]");
profile_->GetExtensionMessageService()->
DispatchEventToRenderers(on_tab_close_event_name_, json);
@@ -79,9 +83,8 @@ void ExtensionDevToolsBridge::SendMessageToClient(const IPC::Message& msg) {
IPC_END_MESSAGE_MAP()
}
-static const char kTimelineAgentClassName[] = "TimelineAgentClass";
-static const char kPageEventMessageName[] = "PageEventMessage";
-static const char kTabUrlChangeEventMessageName[] = "TabUrlChangeEventMessage";
+static const char kApuAgentClassName[] = "ApuAgentDelegate";
+static const char kApuPageEventMessageName[] = "DispatchToApu";
void ExtensionDevToolsBridge::OnRpcMessage(const std::string& class_name,
const std::string& message_name,
@@ -89,18 +92,12 @@ void ExtensionDevToolsBridge::OnRpcMessage(const std::string& class_name,
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\"}]", param1.c_str());
- profile_->GetExtensionMessageService()->
- DispatchEventToRenderers(on_page_event_name_, json);
- } else if (message_name == kTabUrlChangeEventMessageName) {
- std::string json = StringPrintf("[{\"record\": \"%s\"}]", param1.c_str());
- profile_->GetExtensionMessageService()->
- DispatchEventToRenderers(on_tab_url_change_event_name_, json);
- }
+
+ if (class_name == kApuAgentClassName
+ && message_name == kApuPageEventMessageName) {
+ std::string json = StringPrintf("[%s]", param1.c_str());
+ profile_->GetExtensionMessageService()->DispatchEventToRenderers(
+ on_page_event_name_, json);
}
}
diff --git a/chrome/browser/extensions/extension_devtools_bridge.h b/chrome/browser/extensions/extension_devtools_bridge.h
index d6fd960..7cbbc8f 100644
--- a/chrome/browser/extensions/extension_devtools_bridge.h
+++ b/chrome/browser/extensions/extension_devtools_bridge.h
@@ -52,7 +52,6 @@ class ExtensionDevToolsBridge : public DevToolsClientHost {
// The names of the events fired at extensions depend on the tab id,
// so we store the various event names in each bridge.
const std::string on_page_event_name_;
- const std::string on_tab_url_change_event_name_;
const std::string on_tab_close_event_name_;
DISALLOW_COPY_AND_ASSIGN(ExtensionDevToolsBridge);
diff --git a/chrome/browser/extensions/extension_devtools_browsertests.cc b/chrome/browser/extensions/extension_devtools_browsertests.cc
index 19f7ba4..a2eff3c 100644
--- a/chrome/browser/extensions/extension_devtools_browsertests.cc
+++ b/chrome/browser/extensions/extension_devtools_browsertests.cc
@@ -79,21 +79,10 @@ IN_PROC_BROWSER_TEST_F(ExtensionDevToolsBrowserTest, TimelineApi) {
tab_contents->render_view_host());
ASSERT_TRUE(devtools_client_host);
- // Test onTabUrlChange event.
- DevToolsClientMsg_RpcMessage tabUrlChangeEventMessage(
- "TimelineAgentClass", "TabUrlChangeEventMessage", "", "", "");
- devtools_client_host->SendMessageToClient(tabUrlChangeEventMessage);
- ui_test_utils::ExecuteJavaScriptAndExtractBool(
- host->render_view_host(),
- L"",
- L"testReceiveTabUrlChangeEvent()",
- &result);
- EXPECT_TRUE(result);
-
// Test onPageEvent event.
result = false;
DevToolsClientMsg_RpcMessage pageEventMessage(
- "TimelineAgentClass", "PageEventMessage", "", "", "");
+ "ApuAgentDelegate", "DispatchToApu", "", "", "");
devtools_client_host->SendMessageToClient(pageEventMessage);
ui_test_utils::ExecuteJavaScriptAndExtractBool(
host->render_view_host(), L"", L"testReceivePageEvent()", &result);
diff --git a/chrome/browser/extensions/extension_devtools_events.cc b/chrome/browser/extensions/extension_devtools_events.cc
index 979726c..bec5577 100644
--- a/chrome/browser/extensions/extension_devtools_events.cc
+++ b/chrome/browser/extensions/extension_devtools_events.cc
@@ -12,7 +12,6 @@
// in sync with chrome/renderer/resources/extension_process_bindings.js
static const char kDevToolsEventPrefix[] = "devtools.";
static const char kOnPageEventName[] = "onPageEvent";
-static const char kOnTabUrlChangeEventName[] = "onTabUrlChange";
static const char kOnTabCloseEventName[] = "onTabClose";
// static
@@ -43,14 +42,6 @@ std::string ExtensionDevToolsEvents::OnPageEventNameForTab(int tab_id) {
}
// static
-std::string ExtensionDevToolsEvents::OnTabUrlChangeEventNameForTab(int tab_id) {
- return StringPrintf("%s%d.%s",
- kDevToolsEventPrefix,
- tab_id,
- kOnTabUrlChangeEventName);
-}
-
-// static
std::string ExtensionDevToolsEvents::OnTabCloseEventNameForTab(int tab_id) {
return StringPrintf("%s%d.%s",
kDevToolsEventPrefix,
diff --git a/chrome/browser/extensions/extension_devtools_events.h b/chrome/browser/extensions/extension_devtools_events.h
index ff985b2..c1dd363 100644
--- a/chrome/browser/extensions/extension_devtools_events.h
+++ b/chrome/browser/extensions/extension_devtools_events.h
@@ -22,9 +22,6 @@ class ExtensionDevToolsEvents {
// Generates the event string for an onPageEvent for a given tab.
static std::string OnPageEventNameForTab(int tab_id);
- // Generates the event string for an onPageEvent for a given tab.
- static std::string OnTabUrlChangeEventNameForTab(int tab_id);
-
// Generates the event string for an onTabCloseEvent for a given tab.
static std::string OnTabCloseEventNameForTab(int tab_id);