summaryrefslogtreecommitdiffstats
path: root/webkit/glue/devtools/js
diff options
context:
space:
mode:
authorpfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-03 08:34:00 +0000
committerpfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-03 08:34:00 +0000
commit55d70673337a2346cb7e203b5934a56e380f0073 (patch)
treea239c8b32b8d5ed2ea1330a6223d7c129b23bae1 /webkit/glue/devtools/js
parenta8c3d9236906ef90b183ed65df9ae848acf3eab5 (diff)
downloadchromium_src-55d70673337a2346cb7e203b5934a56e380f0073.zip
chromium_src-55d70673337a2346cb7e203b5934a56e380f0073.tar.gz
chromium_src-55d70673337a2346cb7e203b5934a56e380f0073.tar.bz2
DevTools: fixes for crashes / bugs while debugging calendar.google.com.
Review URL: http://codereview.chromium.org/60051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13077 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/glue/devtools/js')
-rw-r--r--webkit/glue/devtools/js/devtools.js65
-rw-r--r--webkit/glue/devtools/js/dom_agent.js6
-rw-r--r--webkit/glue/devtools/js/inspector_controller_impl.js15
-rw-r--r--webkit/glue/devtools/js/net_agent.js11
4 files changed, 76 insertions, 21 deletions
diff --git a/webkit/glue/devtools/js/devtools.js b/webkit/glue/devtools/js/devtools.js
index e0be852..1cc682d 100644
--- a/webkit/glue/devtools/js/devtools.js
+++ b/webkit/glue/devtools/js/devtools.js
@@ -181,6 +181,9 @@ var webkitUpdateChildren =
WebInspector.ElementsTreeElement.prototype.updateChildren;
+/**
+ * @override
+ */
WebInspector.ElementsTreeElement.prototype.updateChildren = function() {
var self = this;
devtools.tools.getDomAgent().getChildNodesAsync(this.representedObject,
@@ -190,6 +193,9 @@ WebInspector.ElementsTreeElement.prototype.updateChildren = function() {
};
+/**
+ * @override
+ */
WebInspector.ElementsPanel.prototype.performSearch = function(query) {
this.searchCanceled();
var self = this;
@@ -201,6 +207,9 @@ WebInspector.ElementsPanel.prototype.performSearch = function(query) {
};
+/**
+ * @override
+ */
WebInspector.ElementsPanel.prototype.searchCanceled = function() {
var self = this;
devtools.tools.getDomAgent().searchCanceled(function(node) {
@@ -211,19 +220,31 @@ WebInspector.ElementsPanel.prototype.searchCanceled = function() {
};
+/**
+ * @override
+ */
WebInspector.ElementsPanel.prototype.jumpToNextSearchResult = function() {
};
+/**
+ * @override
+ */
WebInspector.ElementsPanel.prototype.jumpToPreviousSearchResult = function() {
};
+/**
+ * @override
+ */
WebInspector.Console.prototype._evalInInspectedWindow = function(expr) {
return devtools.tools.evaluate(expr);
};
+/**
+ * @override
+ */
WebInspector.ElementsPanel.prototype.updateStyles = function(forceUpdate) {
var stylesSidebarPane = this.sidebarPanes.styles;
if (!stylesSidebarPane.expanded || !stylesSidebarPane.needsUpdate)
@@ -248,6 +269,9 @@ WebInspector.ElementsPanel.prototype.updateStyles = function(forceUpdate) {
};
+/**
+ * @override
+ */
WebInspector.PropertiesSidebarPane.prototype.update = function(object) {
var body = this.bodyElement;
body.removeChildren();
@@ -275,6 +299,9 @@ WebInspector.PropertiesSidebarPane.prototype.update = function(object) {
};
+/**
+ * @override
+ */
WebInspector.ObjectPropertiesSection.prototype.onpopulate = function() {
var nodeId = this.object.id_;
var protoDepth = this.object.protoDepth_;
@@ -288,6 +315,9 @@ WebInspector.ObjectPropertiesSection.prototype.onpopulate = function() {
};
+/**
+ * @override
+ */
WebInspector.ObjectPropertyTreeElement.prototype.onpopulate = function() {
var nodeId = this.parentObject.devtools$$nodeId_;
var path = this.parentObject.devtools$$path_.slice(0);
@@ -301,6 +331,41 @@ WebInspector.ObjectPropertyTreeElement.prototype.onpopulate = function() {
/**
+ * This override is necessary for starting highlighting after the resource
+ * was added into the frame.
+ * @override
+ */
+WebInspector.SourceView.prototype.setupSourceFrameIfNeeded = function() {
+ if (!this._frameNeedsSetup) {
+ return;
+ }
+
+ this.attach();
+
+ var self = this;
+ var identifier = this.resource.identifier;
+ var element = this.sourceFrame.element;
+ var netAgent = devtools.tools.getNetAgent();
+
+ netAgent.getResourceContentAsync(identifier, function(source) {
+ var resource = netAgent.getResource(identifier);
+ if (InspectorController.addSourceToFrame(resource.mimeType, source,
+ element)) {
+ delete self._frameNeedsSetup;
+ if (resource.type === WebInspector.Resource.Type.Script) {
+ self.sourceFrame.addEventListener("syntax highlighting complete",
+ self._syntaxHighlightingComplete, self);
+ self.sourceFrame.syntaxHighlightJavascript();
+ }
+ } else {
+ self._sourceFrameSetupFinished();
+ }
+ });
+ return true;
+};
+
+
+/**
* Dummy object used during properties inspection.
* @see WebInspector.didGetNodePropertiesAsync_
*/
diff --git a/webkit/glue/devtools/js/dom_agent.js b/webkit/glue/devtools/js/dom_agent.js
index eabdff6..12330b2 100644
--- a/webkit/glue/devtools/js/dom_agent.js
+++ b/webkit/glue/devtools/js/dom_agent.js
@@ -836,8 +836,10 @@ devtools.DomAgent.prototype.getNodeStylesAsync = function(node,
devtools.DomAgent.prototype.getNodeStylesCallback_ = function(node,
callback, styles) {
- node.setStyles_(styles.computedStyle, styles.inlineStyle,
- styles.styleAttributes, styles.matchedCSSRules);
+ if (styles.computedStyle) {
+ node.setStyles_(styles.computedStyle, styles.inlineStyle,
+ styles.styleAttributes, styles.matchedCSSRules);
+ }
callback();
diff --git a/webkit/glue/devtools/js/inspector_controller_impl.js b/webkit/glue/devtools/js/inspector_controller_impl.js
index 087ff2d..2e88115 100644
--- a/webkit/glue/devtools/js/inspector_controller_impl.js
+++ b/webkit/glue/devtools/js/inspector_controller_impl.js
@@ -40,21 +40,6 @@ devtools.InspectorControllerImpl.prototype.addSourceToFrame =
/**
* {@inheritDoc}.
*/
-devtools.InspectorControllerImpl.prototype.addResourceSourceToFrame =
- function(identifier, element) {
- var self = this;
- var netAgent = devtools.tools.getNetAgent();
- netAgent.getResourceContentAsync(identifier, function(source) {
- var resource = netAgent.getResource(identifier);
- self.addSourceToFrame(resource.mimeType, source, element);
- });
- return false;
-};
-
-
-/**
- * {@inheritDoc}.
- */
devtools.InspectorControllerImpl.prototype.hideDOMNodeHighlight = function() {
RemoteToolsAgent.HideDOMNodeHighlight();
};
diff --git a/webkit/glue/devtools/js/net_agent.js b/webkit/glue/devtools/js/net_agent.js
index 2e54f58..00b511c 100644
--- a/webkit/glue/devtools/js/net_agent.js
+++ b/webkit/glue/devtools/js/net_agent.js
@@ -102,16 +102,19 @@ devtools.NetAgent.prototype.didReceiveResponse = function(identifier, response)
resource.expectedContentLength = response.expectedContentLength;
resource.responseStatusCode = response.responseStatusCode;
+ resource.responseHeaders = response.responseHeaders;
resource.mimeType = response.mimeType;
resource.suggestedFilename = response.suggestedFilename;
var mimeType = response.mimeType;
- if (mimeType.indexOf("image/") == 0) {
+ if (mimeType.indexOf('image/') == 0) {
resource.type = WebInspector.Resource.Type.Image;
- } else if (mimeType.indexOf("text/html") == 0) {
+ } else if (mimeType.indexOf('text/html') == 0) {
resource.type = WebInspector.Resource.Type.Document;
- } else if (mimeType.indexOf("script") != -1 ||
- response.url.indexOf(".js") != -1) {
+ } else if (mimeType.indexOf('script') != -1 ||
+ resource.url.indexOf('.js') == resource.url.length - 3) {
resource.type = WebInspector.Resource.Type.Script;
+ } else if (mimeType.indexOf('text/css') == 0) {
+ resource.type = WebInspector.Resource.Type.Stylesheet;
} else {
resource.type = WebInspector.Resource.Type.Other;
}