| Index: Source/devtools/front_end/TimelineUIUtils.js
|
| diff --git a/Source/devtools/front_end/TimelineUIUtils.js b/Source/devtools/front_end/TimelineUIUtils.js
|
| index aefebd09acaf0d39e48753d8771e8d432779ecba..0f9b3b4e90a45683654eca7e95f9bd9cb368d084 100644
|
| --- a/Source/devtools/front_end/TimelineUIUtils.js
|
| +++ b/Source/devtools/front_end/TimelineUIUtils.js
|
| @@ -678,6 +678,7 @@ WebInspector.TimelineUIUtils.buildDetailsNode = function(record, linkifier)
|
| {
|
| var details;
|
| var detailsText;
|
| + var model = record.model();
|
|
|
| switch (record.type) {
|
| case WebInspector.TimelineModel.RecordType.GCEvent:
|
| @@ -687,8 +688,7 @@ WebInspector.TimelineUIUtils.buildDetailsNode = function(record, linkifier)
|
| detailsText = record.data["timerId"];
|
| break;
|
| case WebInspector.TimelineModel.RecordType.FunctionCall:
|
| - if (record.scriptName)
|
| - details = linkifyLocation(record.scriptName, record.scriptLine, 0);
|
| + details = linkifyLocation(record.scriptId, record.scriptName, record.scriptLine, 0);
|
| break;
|
| case WebInspector.TimelineModel.RecordType.FireAnimationFrame:
|
| detailsText = record.data["id"];
|
| @@ -717,7 +717,7 @@ WebInspector.TimelineUIUtils.buildDetailsNode = function(record, linkifier)
|
| details = linkifyTopCallFrame();
|
| break;
|
| case WebInspector.TimelineModel.RecordType.EvaluateScript:
|
| - details = record.url ? linkifyLocation(record.url, record.data["lineNumber"], 0) : null;
|
| + details = linkifyLocation("", record.url, record.data["lineNumber"], 0);
|
| break;
|
| case WebInspector.TimelineModel.RecordType.XHRReadyStateChange:
|
| case WebInspector.TimelineModel.RecordType.XHRLoad:
|
| @@ -737,7 +737,7 @@ WebInspector.TimelineUIUtils.buildDetailsNode = function(record, linkifier)
|
| detailsText = record.data["callbackName"];
|
| break;
|
| default:
|
| - details = record.scriptName ? linkifyLocation(record.scriptName, record.scriptLine, 0) : linkifyTopCallFrame();
|
| + details = linkifyTopCallFrame();
|
| break;
|
| }
|
|
|
| @@ -746,12 +746,21 @@ WebInspector.TimelineUIUtils.buildDetailsNode = function(record, linkifier)
|
| return details;
|
|
|
| /**
|
| + * @param {string} scriptId
|
| * @param {string} url
|
| * @param {number} lineNumber
|
| * @param {number=} columnNumber
|
| */
|
| - function linkifyLocation(url, lineNumber, columnNumber)
|
| + function linkifyLocation(scriptId, url, lineNumber, columnNumber)
|
| {
|
| + if (!model.loadedFromFile() && scriptId) {
|
| + var location = new WebInspector.DebuggerModel.Location(scriptId, lineNumber, columnNumber || 0);
|
| + return linkifier.linkifyRawLocation(location, "timeline-details");
|
| + }
|
| +
|
| + if (!url)
|
| + return null;
|
| +
|
| // FIXME(62725): stack trace line/column numbers are one-based.
|
| columnNumber = columnNumber ? columnNumber - 1 : 0;
|
| return linkifier.linkifyLocation(url, lineNumber - 1, columnNumber, "timeline-details");
|
| @@ -762,7 +771,7 @@ WebInspector.TimelineUIUtils.buildDetailsNode = function(record, linkifier)
|
| */
|
| function linkifyCallFrame(callFrame)
|
| {
|
| - return linkifyLocation(callFrame.url, callFrame.lineNumber, callFrame.columnNumber);
|
| + return linkifyLocation(callFrame.scriptId, callFrame.url, callFrame.lineNumber, callFrame.columnNumber);
|
| }
|
|
|
| /**
|
| @@ -776,14 +785,6 @@ WebInspector.TimelineUIUtils.buildDetailsNode = function(record, linkifier)
|
| return linkifyCallFrame(record.callSiteStackTrace[0]);
|
| return null;
|
| }
|
| -
|
| - /**
|
| - * @return {?Element}
|
| - */
|
| - function linkifyScriptLocation()
|
| - {
|
| - return record.scriptName ? linkifyLocation(record.scriptName, record.scriptLine, 0) : null;
|
| - }
|
| }
|
|
|
| /**
|
|
|