summaryrefslogtreecommitdiffstats
path: root/chrome/browser/debugger/devtools_manager.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/debugger/devtools_manager.cc')
-rw-r--r--chrome/browser/debugger/devtools_manager.cc23
1 files changed, 23 insertions, 0 deletions
diff --git a/chrome/browser/debugger/devtools_manager.cc b/chrome/browser/debugger/devtools_manager.cc
index 470fb5c..9f63a97 100644
--- a/chrome/browser/debugger/devtools_manager.cc
+++ b/chrome/browser/debugger/devtools_manager.cc
@@ -11,6 +11,7 @@
#include "chrome/browser/tab_contents/web_contents.h"
#include "chrome/common/notification_registrar.h"
#include "chrome/common/notification_type.h"
+#include "chrome/renderer/devtools_messages.h"
DevToolsManager::DevToolsManager() : web_contents_listeners_(NULL) {
}
@@ -127,6 +128,28 @@ void DevToolsManager::ForwardToDevToolsClient(const RenderViewHost& from,
target_host->SendMessageToClient(message);
}
+void DevToolsManager::OpenDevToolsWindow(WebContents* wc) {
+ DevToolsClientHost* host = GetDevToolsClientHostFor(*wc);
+ if (!host) {
+ host = DevToolsWindow::Create();
+ RegisterDevToolsClientHostFor(*wc, host);
+ }
+ DevToolsWindow* window = host->AsDevToolsWindow();
+ if (window)
+ window->Show();
+}
+
+void DevToolsManager::InspectElement(WebContents* wc, int x, int y) {
+ OpenDevToolsWindow(wc);
+ RenderViewHost* target_host = wc->render_view_host();
+ if (!target_host) {
+ return;
+ }
+ IPC::Message* m = new DevToolsAgentMsg_InspectElement(x, y);
+ m->set_routing_id(target_host->routing_id());
+ target_host->Send(m);
+}
+
void DevToolsManager::ClientHostClosing(DevToolsClientHost* host) {
NavigationController* controller = GetDevToolsAgentNavigationController(
*host);