Modified: trunk/Source/WebCore/ChangeLog (109560 => 109561)
--- trunk/Source/WebCore/ChangeLog 2012-03-02 13:15:09 UTC (rev 109560)
+++ trunk/Source/WebCore/ChangeLog 2012-03-02 13:22:12 UTC (rev 109561)
@@ -1,5 +1,22 @@
2012-03-02 Pavel Podivilov <podivi...@chromium.org>
+ Web Inspector: limit RawSourceCode usages to DebuggerPresentationModel.
+ https://bugs.webkit.org/show_bug.cgi?id=80146
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.prototype.uiLocationToRawLocation):
+ (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyLocation):
+ (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyRawLocation):
+ * inspector/front-end/ObjectPopoverHelper.js:
+ (WebInspector.ObjectPopoverHelper.prototype._showObjectPopover.showObjectPopover.):
+ (WebInspector.ObjectPopoverHelper.prototype._showObjectPopover):
+ * inspector/front-end/ScriptsSearchScope.js:
+ (WebInspector.ScriptsSearchResultsPane.prototype.createAnchor):
+
+2012-03-02 Pavel Podivilov <podivi...@chromium.org>
+
Web Inspector: update execution line using LiveLocation.
https://bugs.webkit.org/show_bug.cgi?id=80143
Modified: trunk/Source/WebCore/inspector/front-end/DebuggerPresentationModel.js (109560 => 109561)
--- trunk/Source/WebCore/inspector/front-end/DebuggerPresentationModel.js 2012-03-02 13:15:09 UTC (rev 109560)
+++ trunk/Source/WebCore/inspector/front-end/DebuggerPresentationModel.js 2012-03-02 13:22:12 UTC (rev 109561)
@@ -105,6 +105,17 @@
},
/**
+ * @param {WebInspector.UISourceCode} uiSourceCode
+ * @param {number} lineNumber
+ * @param {number} columnNumber
+ * @return {DebuggerAgent.Location}
+ */
+ uiLocationToRawLocation: function(uiSourceCode, lineNumber, columnNumber)
+ {
+ return uiSourceCode.rawSourceCode.uiLocationToRawLocation(uiSourceCode, lineNumber, columnNumber);
+ },
+
+ /**
* @param {WebInspector.Event} event
*/
_parsedScriptSource: function(event)
@@ -976,37 +987,29 @@
*/
linkifyLocation: function(sourceURL, lineNumber, columnNumber, classes)
{
- var rawSourceCode = this._model._rawSourceCodeForScriptWithURL(sourceURL);
- if (!rawSourceCode)
+ var script = this._model._scriptForURLAndLocation(sourceURL, lineNumber, columnNumber);
+ if (!script)
return WebInspector.linkifyResourceAsNode(sourceURL, lineNumber, classes);
-
- return this.linkifyRawSourceCode(rawSourceCode, lineNumber, columnNumber, classes);
+ var rawLocation = new WebInspector.DebuggerModel.Location(lineNumber, columnNumber);
+ rawLocation.scriptId = script.scriptId;
+ return this.linkifyRawLocation(rawLocation, classes);
},
/**
- * @param {WebInspector.RawSourceCode} rawSourceCode
- * @param {number=} lineNumber
- * @param {number=} columnNumber
+ * @param {WebInspector.DebuggerModel.Location} rawLocation
* @param {string=} classes
*/
- linkifyRawSourceCode: function(rawSourceCode, lineNumber, columnNumber, classes)
+ linkifyRawLocation: function(rawLocation, classes)
{
- var anchor = WebInspector.linkifyURLAsNode(rawSourceCode.url, "", classes, false);
- var rawLocation = { lineNumber: lineNumber, columnNumber: columnNumber };
+ var anchor = WebInspector.linkifyURLAsNode("", "", classes, false);
+ var script = WebInspector.debuggerModel.scriptForSourceID(rawLocation.scriptId);
+ var rawSourceCode = this._model._rawSourceCodeForScript(script);
var liveLocation = rawSourceCode.createLiveLocation(rawLocation, this._updateAnchor.bind(this, anchor));
liveLocation.init();
this._liveLocations.push(liveLocation);
return anchor;
},
- linkifyFunctionLocation: function(functionLocation, classes)
- {
- var rawSourceCode = this._model._rawSourceCodeForScriptId[functionLocation.scriptId];
- if (!rawSourceCode)
- return undefined;
- return this.linkifyRawSourceCode(rawSourceCode, functionLocation.lineNumber, functionLocation.columnNumber, classes);
- },
-
reset: function()
{
for (var i = 0; i < this._liveLocations.length; ++i)
Modified: trunk/Source/WebCore/inspector/front-end/ObjectPopoverHelper.js (109560 => 109561)
--- trunk/Source/WebCore/inspector/front-end/ObjectPopoverHelper.js 2012-03-02 13:15:09 UTC (rev 109560)
+++ trunk/Source/WebCore/inspector/front-end/ObjectPopoverHelper.js 2012-03-02 13:22:12 UTC (rev 109561)
@@ -73,7 +73,7 @@
functionName.textContent = response.name || response.inferredName || response.displayName || WebInspector.UIString("(anonymous function)");
this._linkifier = WebInspector.debuggerPresentationModel.createLinkifier();
- var link = this._linkifier.linkifyFunctionLocation(response.location, "function-location-link");
+ var link = this._linkifier.linkifyRawLocation(response.location, "function-location-link");
if (link)
title.appendChild(link);
Modified: trunk/Source/WebCore/inspector/front-end/ScriptsSearchScope.js (109560 => 109561)
--- trunk/Source/WebCore/inspector/front-end/ScriptsSearchScope.js 2012-03-02 13:15:09 UTC (rev 109560)
+++ trunk/Source/WebCore/inspector/front-end/ScriptsSearchScope.js 2012-03-02 13:22:12 UTC (rev 109561)
@@ -144,11 +144,9 @@
*/
createAnchor: function(file, lineNumber, columnNumber)
{
-
var uiSourceCode = file;
- var rawSourceCode = uiSourceCode.rawSourceCode;
- var rawLocation = rawSourceCode.uiLocationToRawLocation(uiSourceCode, lineNumber, columnNumber);
- var anchor = this._linkifier.linkifyRawSourceCode(uiSourceCode.rawSourceCode, rawLocation.lineNumber, rawLocation.columnNumber);
+ var rawLocation = WebInspector.debuggerPresentationModel.uiLocationToRawLocation(uiSourceCode, lineNumber, columnNumber);
+ var anchor = this._linkifier.linkifyRawLocation(rawLocation);
anchor.removeChildren();
return anchor;
},