| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 } | 153 } |
| 154 }, | 154 }, |
| 155 | 155 |
| 156 /** | 156 /** |
| 157 * @param {?WebInspector.Target} target | 157 * @param {?WebInspector.Target} target |
| 158 * @param {?string} scriptId | 158 * @param {?string} scriptId |
| 159 * @param {string} sourceURL | 159 * @param {string} sourceURL |
| 160 * @param {number} lineNumber | 160 * @param {number} lineNumber |
| 161 * @param {number=} columnNumber | 161 * @param {number=} columnNumber |
| 162 * @param {string=} classes | 162 * @param {string=} classes |
| 163 * @return {!Element} | 163 * @return {?Element} |
| 164 */ | 164 */ |
| 165 linkifyScriptLocation: function(target, scriptId, sourceURL, lineNumber, col
umnNumber, classes) | 165 maybeLinkifyScriptLocation: function(target, scriptId, sourceURL, lineNumber
, columnNumber, classes) |
| 166 { | 166 { |
| 167 var fallbackAnchor = WebInspector.linkifyResourceAsNode(sourceURL, lineN
umber, columnNumber, classes); | 167 var fallbackAnchor = sourceURL ? WebInspector.linkifyResourceAsNode(sour
ceURL, lineNumber, columnNumber, classes) : null; |
| 168 if (!target || target.isDetached()) | 168 if (!target || target.isDetached()) |
| 169 return fallbackAnchor; | 169 return fallbackAnchor; |
| 170 var debuggerModel = WebInspector.DebuggerModel.fromTarget(target); | 170 var debuggerModel = WebInspector.DebuggerModel.fromTarget(target); |
| 171 if (!debuggerModel) | 171 if (!debuggerModel) |
| 172 return fallbackAnchor; | 172 return fallbackAnchor; |
| 173 | 173 |
| 174 var rawLocation = scriptId ? debuggerModel.createRawLocationByScriptId(s
criptId, lineNumber, columnNumber || 0) : | 174 var rawLocation = |
| 175 debuggerModel.createRawLocationByURL(source
URL, lineNumber, columnNumber || 0); | 175 debuggerModel.createRawLocationByScriptId(scriptId, lineNumber, colu
mnNumber || 0) || |
| 176 debuggerModel.createRawLocationByURL(sourceURL, lineNumber, columnNu
mber || 0); |
| 176 if (!rawLocation) | 177 if (!rawLocation) |
| 177 return fallbackAnchor; | 178 return fallbackAnchor; |
| 178 | 179 |
| 179 var anchor = this._createAnchor(classes); | 180 var anchor = this._createAnchor(classes); |
| 180 var liveLocation = WebInspector.debuggerWorkspaceBinding.createLiveLocat
ion(rawLocation, this._updateAnchor.bind(this, anchor), /** @type {!WebInspector
.LiveLocationPool} */(this._locationPoolByTarget.get(rawLocation.target()))); | 181 var liveLocation = WebInspector.debuggerWorkspaceBinding.createLiveLocat
ion(rawLocation, this._updateAnchor.bind(this, anchor), /** @type {!WebInspector
.LiveLocationPool} */(this._locationPoolByTarget.get(rawLocation.target()))); |
| 181 var anchors = /** @type {!Array<!Element>} */(this._anchorsByTarget.get(
rawLocation.target())); | 182 var anchors = /** @type {!Array<!Element>} */(this._anchorsByTarget.get(
rawLocation.target())); |
| 182 anchors.push(anchor); | 183 anchors.push(anchor); |
| 183 anchor[WebInspector.Linkifier._liveLocationSymbol] = liveLocation; | 184 anchor[WebInspector.Linkifier._liveLocationSymbol] = liveLocation; |
| 184 anchor[WebInspector.Linkifier._fallbackAnchorSymbol] = fallbackAnchor; | 185 anchor[WebInspector.Linkifier._fallbackAnchorSymbol] = fallbackAnchor; |
| 185 return anchor; | 186 return anchor; |
| 186 }, | 187 }, |
| 187 | 188 |
| 188 /** | 189 /** |
| 190 * @param {?WebInspector.Target} target |
| 191 * @param {?string} scriptId |
| 192 * @param {string} sourceURL |
| 193 * @param {number} lineNumber |
| 194 * @param {number=} columnNumber |
| 195 * @param {string=} classes |
| 196 * @return {!Element} |
| 197 */ |
| 198 linkifyScriptLocation: function(target, scriptId, sourceURL, lineNumber, col
umnNumber, classes) |
| 199 { |
| 200 return this.maybeLinkifyScriptLocation(target, scriptId, sourceURL, line
Number, columnNumber, classes) |
| 201 || WebInspector.linkifyResourceAsNode(sourceURL, lineNumber, columnN
umber, classes); |
| 202 }, |
| 203 |
| 204 /** |
| 189 * @param {!WebInspector.DebuggerModel.Location} rawLocation | 205 * @param {!WebInspector.DebuggerModel.Location} rawLocation |
| 190 * @param {string} fallbackUrl | 206 * @param {string} fallbackUrl |
| 191 * @param {string=} classes | 207 * @param {string=} classes |
| 192 * @return {!Element} | 208 * @return {!Element} |
| 193 */ | 209 */ |
| 194 linkifyRawLocation: function(rawLocation, fallbackUrl, classes) | 210 linkifyRawLocation: function(rawLocation, fallbackUrl, classes) |
| 195 { | 211 { |
| 196 return this.linkifyScriptLocation(rawLocation.target(), rawLocation.scri
ptId, fallbackUrl, rawLocation.lineNumber, rawLocation.columnNumber, classes); | 212 return this.linkifyScriptLocation(rawLocation.target(), rawLocation.scri
ptId, fallbackUrl, rawLocation.lineNumber, rawLocation.columnNumber, classes); |
| 197 }, | 213 }, |
| 198 | 214 |
| 199 /** | 215 /** |
| 200 * @param {?WebInspector.Target} target | 216 * @param {?WebInspector.Target} target |
| 201 * @param {!RuntimeAgent.CallFrame} callFrame | 217 * @param {!RuntimeAgent.CallFrame} callFrame |
| 202 * @param {string=} classes | 218 * @param {string=} classes |
| 203 * @return {!Element} | 219 * @return {?Element} |
| 204 */ | 220 */ |
| 205 linkifyConsoleCallFrame: function(target, callFrame, classes) | 221 maybeLinkifyConsoleCallFrame: function(target, callFrame, classes) |
| 206 { | 222 { |
| 207 return this.linkifyScriptLocation(target, callFrame.scriptId, callFrame.
url, callFrame.lineNumber, callFrame.columnNumber, classes); | 223 return this.maybeLinkifyScriptLocation(target, callFrame.scriptId, callF
rame.url, callFrame.lineNumber, callFrame.columnNumber, classes); |
| 208 }, | 224 }, |
| 209 | 225 |
| 210 /** | 226 /** |
| 211 * @param {?WebInspector.Target} target | 227 * @param {?WebInspector.Target} target |
| 212 * @param {!RuntimeAgent.CallFrame} callFrame | 228 * @param {!RuntimeAgent.CallFrame} callFrame |
| 213 * @param {string=} classes | 229 * @param {string=} classes |
| 214 * @return {!Element} | 230 * @return {?Element} |
| 215 */ | 231 */ |
| 216 linkifyConsoleCallFrameForTimeline: function(target, callFrame, classes) | 232 maybeLinkifyConsoleCallFrameForTimeline: function(target, callFrame, classes
) |
| 217 { | 233 { |
| 218 // TODO(kozyatinskiy): remove this when Profilers will migrate to 0-base
d lineNumber and columnNumber. | 234 // TODO(kozyatinskiy): remove this when Profilers will migrate to 0-base
d lineNumber and columnNumber. |
| 219 return this.linkifyScriptLocation(target, callFrame.scriptId, callFrame.
url, callFrame.lineNumber - 1, callFrame.columnNumber - 1, classes); | 235 return this.linkifyScriptLocation(target, callFrame.scriptId, callFrame.
url, callFrame.lineNumber - 1, callFrame.columnNumber - 1, classes); |
| 220 }, | 236 }, |
| 221 | 237 |
| 222 /** | 238 /** |
| 223 * @param {!WebInspector.Target} target | 239 * @param {!WebInspector.Target} target |
| 224 * @param {!RuntimeAgent.StackTrace} stackTrace | 240 * @param {!RuntimeAgent.StackTrace} stackTrace |
| 225 * @param {string=} classes | 241 * @param {string=} classes |
| 226 * @return {!Element} | 242 * @return {!Element} |
| (...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 527 * @param {string} url | 543 * @param {string} url |
| 528 * @param {number=} lineNumber | 544 * @param {number=} lineNumber |
| 529 * @param {number=} columnNumber | 545 * @param {number=} columnNumber |
| 530 * @param {string=} classes | 546 * @param {string=} classes |
| 531 * @param {string=} tooltipText | 547 * @param {string=} tooltipText |
| 532 * @param {string=} urlDisplayName | 548 * @param {string=} urlDisplayName |
| 533 * @return {!Element} | 549 * @return {!Element} |
| 534 */ | 550 */ |
| 535 WebInspector.linkifyResourceAsNode = function(url, lineNumber, columnNumber, cla
sses, tooltipText, urlDisplayName) | 551 WebInspector.linkifyResourceAsNode = function(url, lineNumber, columnNumber, cla
sses, tooltipText, urlDisplayName) |
| 536 { | 552 { |
| 537 var linkText = urlDisplayName ? urlDisplayName : url ? WebInspector.displayN
ameForURL(url) : WebInspector.UIString("(program)"); | 553 if (!url) { |
| 554 var element = createElementWithClass("span", classes); |
| 555 element.textContent = urlDisplayName || WebInspector.UIString("(unknown)
"); |
| 556 return element; |
| 557 } |
| 558 var linkText = urlDisplayName || WebInspector.displayNameForURL(url); |
| 538 if (typeof lineNumber === "number") | 559 if (typeof lineNumber === "number") |
| 539 linkText += ":" + (lineNumber + 1); | 560 linkText += ":" + (lineNumber + 1); |
| 540 var anchor = WebInspector.linkifyURLAsNode(url, linkText, classes, false, to
oltipText); | 561 var anchor = WebInspector.linkifyURLAsNode(url, linkText, classes, false, to
oltipText); |
| 541 anchor.lineNumber = lineNumber; | 562 anchor.lineNumber = lineNumber; |
| 542 anchor.columnNumber = columnNumber; | 563 anchor.columnNumber = columnNumber; |
| 543 return anchor; | 564 return anchor; |
| 544 } | 565 } |
| 545 | 566 |
| 546 /** | 567 /** |
| 547 * @param {!WebInspector.NetworkRequest} request | 568 * @param {!WebInspector.NetworkRequest} request |
| 548 * @return {!Element} | 569 * @return {!Element} |
| 549 */ | 570 */ |
| 550 WebInspector.linkifyRequestAsNode = function(request) | 571 WebInspector.linkifyRequestAsNode = function(request) |
| 551 { | 572 { |
| 552 var anchor = WebInspector.linkifyURLAsNode(request.url); | 573 var anchor = WebInspector.linkifyURLAsNode(request.url); |
| 553 anchor.requestId = request.requestId; | 574 anchor.requestId = request.requestId; |
| 554 return anchor; | 575 return anchor; |
| 555 } | 576 } |
| OLD | NEW |