summaryrefslogtreecommitdiffstats
path: root/webkit/glue
diff options
context:
space:
mode:
Diffstat (limited to 'webkit/glue')
-rw-r--r--webkit/glue/devtools/js/devtools_host_stub.js2
-rw-r--r--webkit/glue/devtools/js/inspector_controller_impl.js29
-rw-r--r--webkit/glue/webdevtoolsclient_delegate.h1
-rw-r--r--webkit/glue/webdevtoolsclient_impl.cc13
-rw-r--r--webkit/glue/webdevtoolsclient_impl.h2
5 files changed, 37 insertions, 10 deletions
diff --git a/webkit/glue/devtools/js/devtools_host_stub.js b/webkit/glue/devtools/js/devtools_host_stub.js
index 4d875d3..026153a 100644
--- a/webkit/glue/devtools/js/devtools_host_stub.js
+++ b/webkit/glue/devtools/js/devtools_host_stub.js
@@ -226,6 +226,8 @@ RemoteToolsAgentStub.prototype.ExecuteUtilityFunction = function(callId,
} catch (e) {
result = [ e.toString(), true ];
}
+ } else if (functionName == 'InspectorController') {
+ // do nothing;
} else {
alert('Unexpected utility function:' + functionName);
}
diff --git a/webkit/glue/devtools/js/inspector_controller_impl.js b/webkit/glue/devtools/js/inspector_controller_impl.js
index dc24478..cbfcd57 100644
--- a/webkit/glue/devtools/js/inspector_controller_impl.js
+++ b/webkit/glue/devtools/js/inspector_controller_impl.js
@@ -20,7 +20,7 @@ goog.inherits(devtools.InspectorControllerImpl,
/**
* {@inheritDoc}.
*/
-devtools.InspectorController.prototype.platform = function() {
+devtools.InspectorControllerImpl.prototype.platform = function() {
return DevToolsHost.getPlatform();
};
@@ -28,7 +28,7 @@ devtools.InspectorController.prototype.platform = function() {
/**
* {@inheritDoc}.
*/
-devtools.InspectorController.prototype.closeWindow = function() {
+devtools.InspectorControllerImpl.prototype.closeWindow = function() {
DevToolsHost.closeWindow();
};
@@ -36,7 +36,7 @@ devtools.InspectorController.prototype.closeWindow = function() {
/**
* {@inheritDoc}.
*/
-devtools.InspectorController.prototype.attach = function() {
+devtools.InspectorControllerImpl.prototype.attach = function() {
DevToolsHost.dockWindow();
};
@@ -44,7 +44,7 @@ devtools.InspectorController.prototype.attach = function() {
/**
* {@inheritDoc}.
*/
-devtools.InspectorController.prototype.detach = function() {
+devtools.InspectorControllerImpl.prototype.detach = function() {
DevToolsHost.undockWindow();
};
@@ -52,7 +52,7 @@ devtools.InspectorController.prototype.detach = function() {
/**
* {@inheritDoc}.
*/
-devtools.InspectorController.prototype.storeLastActivePanel = function(panel) {
+devtools.InspectorControllerImpl.prototype.storeLastActivePanel = function(panel) {
RemoteToolsAgent.ExecuteUtilityFunction(
devtools.Callback.wrap(undefined),
'InspectorController', JSON.stringify(['storeLastActivePanel', panel]));
@@ -62,7 +62,7 @@ devtools.InspectorController.prototype.storeLastActivePanel = function(panel) {
/**
* {@inheritDoc}.
*/
-devtools.InspectorController.prototype.clearMessages = function() {
+devtools.InspectorControllerImpl.prototype.clearMessages = function() {
RemoteToolsAgent.ClearConsoleMessages();
};
@@ -78,7 +78,7 @@ devtools.InspectorControllerImpl.prototype.hiddenPanels = function() {
/**
* {@inheritDoc}.
*/
-devtools.InspectorController.prototype.search = function(sourceRow, query) {
+devtools.InspectorControllerImpl.prototype.search = function(sourceRow, query) {
return DevToolsHost.search(sourceRow, query);
};
@@ -86,6 +86,15 @@ devtools.InspectorController.prototype.search = function(sourceRow, query) {
/**
* {@inheritDoc}.
*/
+devtools.InspectorControllerImpl.prototype.toggleNodeSearch = function() {
+ devtools.InspectorController.prototype.toggleNodeSearch.call(this);
+ DevToolsHost.toggleInspectElementMode(this.searchingForNode());
+};
+
+
+/**
+ * {@inheritDoc}.
+ */
devtools.InspectorControllerImpl.prototype.addSourceToFrame =
function(mimeType, source, element) {
return DevToolsHost.addSourceToFrame(mimeType, source, element);
@@ -133,7 +142,7 @@ devtools.InspectorControllerImpl.prototype.inspectedWindow = function() {
/**
* {@inheritDoc}.
*/
-devtools.InspectorController.prototype.enableResourceTracking =
+devtools.InspectorControllerImpl.prototype.enableResourceTracking =
function(always) {
devtools.tools.setResourceTrackingEnabled(true, always);
}
@@ -142,7 +151,7 @@ devtools.InspectorController.prototype.enableResourceTracking =
/**
* {@inheritDoc}.
*/
-devtools.InspectorController.prototype.disableResourceTracking =
+devtools.InspectorControllerImpl.prototype.disableResourceTracking =
function(always) {
devtools.tools.setResourceTrackingEnabled(false, always);
};
@@ -173,7 +182,7 @@ devtools.InspectorControllerImpl.prototype.removeBreakpoint = function(
};
-devtools.InspectorController.prototype.pauseInDebugger = function() {
+devtools.InspectorControllerImpl.prototype.pauseInDebugger = function() {
devtools.tools.getDebuggerAgent().pauseExecution();
};
diff --git a/webkit/glue/webdevtoolsclient_delegate.h b/webkit/glue/webdevtoolsclient_delegate.h
index 09d088b..b7ef635 100644
--- a/webkit/glue/webdevtoolsclient_delegate.h
+++ b/webkit/glue/webdevtoolsclient_delegate.h
@@ -22,6 +22,7 @@ class WebDevToolsClientDelegate {
virtual void CloseWindow() = 0;
virtual void DockWindow() = 0;
virtual void UndockWindow() = 0;
+ virtual void ToggleInspectElementMode(bool enabled) = 0;
private:
DISALLOW_COPY_AND_ASSIGN(WebDevToolsClientDelegate);
diff --git a/webkit/glue/webdevtoolsclient_impl.cc b/webkit/glue/webdevtoolsclient_impl.cc
index 5bb2883..eaf923f 100644
--- a/webkit/glue/webdevtoolsclient_impl.cc
+++ b/webkit/glue/webdevtoolsclient_impl.cc
@@ -181,6 +181,9 @@ WebDevToolsClientImpl::WebDevToolsClientImpl(
dev_tools_host_->AddProtoFunction(
"undockWindow",
WebDevToolsClientImpl::JsUndockWindow);
+ dev_tools_host_->AddProtoFunction(
+ "toggleInspectElementMode",
+ WebDevToolsClientImpl::JsToggleInspectElementMode);
dev_tools_host_->Build();
}
@@ -357,3 +360,13 @@ v8::Handle<v8::Value> WebDevToolsClientImpl::JsUndockWindow(
client->delegate_->UndockWindow();
return v8::Undefined();
}
+
+// static
+v8::Handle<v8::Value> WebDevToolsClientImpl::JsToggleInspectElementMode(
+ const v8::Arguments& args) {
+ WebDevToolsClientImpl* client = static_cast<WebDevToolsClientImpl*>(
+ v8::External::Cast(*args.Data())->Value());
+ int enabled = static_cast<int>(args[0]->BooleanValue());
+ client->delegate_->ToggleInspectElementMode(enabled);
+ return v8::Undefined();
+}
diff --git a/webkit/glue/webdevtoolsclient_impl.h b/webkit/glue/webdevtoolsclient_impl.h
index 8180458..ce07dd4 100644
--- a/webkit/glue/webdevtoolsclient_impl.h
+++ b/webkit/glue/webdevtoolsclient_impl.h
@@ -67,6 +67,8 @@ class WebDevToolsClientImpl : public WebDevToolsClient,
static v8::Handle<v8::Value> JsCloseWindow(const v8::Arguments& args);
static v8::Handle<v8::Value> JsDockWindow(const v8::Arguments& args);
static v8::Handle<v8::Value> JsUndockWindow(const v8::Arguments& args);
+ static v8::Handle<v8::Value> JsToggleInspectElementMode(
+ const v8::Arguments& args);
WebViewImpl* web_view_impl_;
WebDevToolsClientDelegate* delegate_;