| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
| 3 * Copyright (C) 2007, 2008 Apple Inc. All rights reserved. | 3 * Copyright (C) 2007, 2008 Apple Inc. All rights reserved. |
| 4 * Copyright (C) 2009 Joseph Pecoraro | 4 * Copyright (C) 2009 Joseph Pecoraro |
| 5 * | 5 * |
| 6 * Redistribution and use in source and binary forms, with or without | 6 * Redistribution and use in source and binary forms, with or without |
| 7 * modification, are permitted provided that the following conditions | 7 * modification, are permitted provided that the following conditions |
| 8 * are met: | 8 * are met: |
| 9 * | 9 * |
| 10 * 1. Redistributions of source code must retain the above copyright | 10 * 1. Redistributions of source code must retain the above copyright |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 51 this._customFormatters = { | 51 this._customFormatters = { |
| 52 "object": this._formatParameterAsObject, | 52 "object": this._formatParameterAsObject, |
| 53 "array": this._formatParameterAsArray, | 53 "array": this._formatParameterAsArray, |
| 54 "node": this._formatParameterAsNode, | 54 "node": this._formatParameterAsNode, |
| 55 "string": this._formatParameterAsString | 55 "string": this._formatParameterAsString |
| 56 }; | 56 }; |
| 57 } | 57 } |
| 58 | 58 |
| 59 WebInspector.ConsoleViewMessage.prototype = { | 59 WebInspector.ConsoleViewMessage.prototype = { |
| 60 /** | 60 /** |
| 61 * @return {!WebInspector.Target} | 61 * @return {?WebInspector.Target} |
| 62 */ | 62 */ |
| 63 _target: function() | 63 _target: function() |
| 64 { | 64 { |
| 65 return this.consoleMessage().target(); | 65 return this.consoleMessage().target(); |
| 66 }, | 66 }, |
| 67 | 67 |
| 68 /** | 68 /** |
| 69 * @return {!Element} | 69 * @return {!Element} |
| 70 */ | 70 */ |
| 71 element: function() | 71 element: function() |
| (...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 240 | 240 |
| 241 /** | 241 /** |
| 242 * @param {string} url | 242 * @param {string} url |
| 243 * @param {number} lineNumber | 243 * @param {number} lineNumber |
| 244 * @param {number} columnNumber | 244 * @param {number} columnNumber |
| 245 * @return {?Element} | 245 * @return {?Element} |
| 246 */ | 246 */ |
| 247 _linkifyLocation: function(url, lineNumber, columnNumber) | 247 _linkifyLocation: function(url, lineNumber, columnNumber) |
| 248 { | 248 { |
| 249 console.assert(this._linkifier); | 249 console.assert(this._linkifier); |
| 250 if (!this._linkifier) | 250 var target = this._target(); |
| 251 if (!this._linkifier || !target) |
| 251 return null; | 252 return null; |
| 252 // FIXME(62725): stack trace line/column numbers are one-based. | 253 // FIXME(62725): stack trace line/column numbers are one-based. |
| 253 lineNumber = lineNumber ? lineNumber - 1 : 0; | 254 lineNumber = lineNumber ? lineNumber - 1 : 0; |
| 254 columnNumber = columnNumber ? columnNumber - 1 : 0; | 255 columnNumber = columnNumber ? columnNumber - 1 : 0; |
| 255 if (this._message.source === WebInspector.ConsoleMessage.MessageSource.C
SS) { | 256 if (this._message.source === WebInspector.ConsoleMessage.MessageSource.C
SS) { |
| 256 var headerIds = this._target().cssModel.styleSheetIdsForURL(url); | 257 var headerIds = target.cssModel.styleSheetIdsForURL(url); |
| 257 var cssLocation = new WebInspector.CSSLocation(this._target(), url,
lineNumber, columnNumber); | 258 var cssLocation = new WebInspector.CSSLocation(target, url, lineNumb
er, columnNumber); |
| 258 return this._linkifier.linkifyCSSLocation(headerIds[0] || null, cssL
ocation, "console-message-url"); | 259 return this._linkifier.linkifyCSSLocation(headerIds[0] || null, cssL
ocation, "console-message-url"); |
| 259 } | 260 } |
| 260 | 261 |
| 261 return this._linkifier.linkifyLocation(this._target(), url, lineNumber,
columnNumber, "console-message-url"); | 262 return this._linkifier.linkifyLocation(target, url, lineNumber, columnNu
mber, "console-message-url"); |
| 262 }, | 263 }, |
| 263 | 264 |
| 264 /** | 265 /** |
| 265 * @param {!ConsoleAgent.CallFrame} callFrame | 266 * @param {!ConsoleAgent.CallFrame} callFrame |
| 266 * @return {?Element} | 267 * @return {?Element} |
| 267 */ | 268 */ |
| 268 _linkifyCallFrame: function(callFrame) | 269 _linkifyCallFrame: function(callFrame) |
| 269 { | 270 { |
| 270 console.assert(this._linkifier); | 271 console.assert(this._linkifier); |
| 271 if (!this._linkifier) | 272 var target = this._target(); |
| 273 if (!this._linkifier || !target) |
| 272 return null; | 274 return null; |
| 273 // FIXME(62725): stack trace line/column numbers are one-based. | 275 // FIXME(62725): stack trace line/column numbers are one-based. |
| 274 var lineNumber = callFrame.lineNumber ? callFrame.lineNumber - 1 : 0; | 276 var lineNumber = callFrame.lineNumber ? callFrame.lineNumber - 1 : 0; |
| 275 var columnNumber = callFrame.columnNumber ? callFrame.columnNumber - 1 :
0; | 277 var columnNumber = callFrame.columnNumber ? callFrame.columnNumber - 1 :
0; |
| 276 var rawLocation = new WebInspector.DebuggerModel.Location(this._target()
, callFrame.scriptId, lineNumber, columnNumber); | 278 var rawLocation = new WebInspector.DebuggerModel.Location(target, callFr
ame.scriptId, lineNumber, columnNumber); |
| 277 return this._linkifier.linkifyRawLocation(rawLocation, "console-message-
url"); | 279 return this._linkifier.linkifyRawLocation(rawLocation, "console-message-
url"); |
| 278 }, | 280 }, |
| 279 | 281 |
| 280 /** | 282 /** |
| 281 * @param {?Array.<!ConsoleAgent.CallFrame>} stackTrace | 283 * @param {?Array.<!ConsoleAgent.CallFrame>} stackTrace |
| 282 * @return {?ConsoleAgent.CallFrame} | 284 * @return {?ConsoleAgent.CallFrame} |
| 283 */ | 285 */ |
| 284 _callFrameAnchorFromStackTrace: function(stackTrace) | 286 _callFrameAnchorFromStackTrace: function(stackTrace) |
| 285 { | 287 { |
| 286 if (!stackTrace || !stackTrace.length) | 288 if (!stackTrace || !stackTrace.length) |
| (...skipping 22 matching lines...) Expand all Loading... |
| 309 return (this._message.level === WebInspector.ConsoleMessage.MessageLevel
.Warning || this._message.level === WebInspector.ConsoleMessage.MessageLevel.Err
or); | 311 return (this._message.level === WebInspector.ConsoleMessage.MessageLevel
.Warning || this._message.level === WebInspector.ConsoleMessage.MessageLevel.Err
or); |
| 310 }, | 312 }, |
| 311 | 313 |
| 312 _format: function(parameters) | 314 _format: function(parameters) |
| 313 { | 315 { |
| 314 // This node is used like a Builder. Values are continually appended ont
o it. | 316 // This node is used like a Builder. Values are continually appended ont
o it. |
| 315 var formattedResult = document.createElement("span"); | 317 var formattedResult = document.createElement("span"); |
| 316 if (!parameters.length) | 318 if (!parameters.length) |
| 317 return formattedResult; | 319 return formattedResult; |
| 318 | 320 |
| 321 var target = this._target(); |
| 322 |
| 319 // Formatting code below assumes that parameters are all wrappers wherea
s frontend console | 323 // Formatting code below assumes that parameters are all wrappers wherea
s frontend console |
| 320 // API allows passing arbitrary values as messages (strings, numbers, et
c.). Wrap them here. | 324 // API allows passing arbitrary values as messages (strings, numbers, et
c.). Wrap them here. |
| 321 for (var i = 0; i < parameters.length; ++i) { | 325 for (var i = 0; i < parameters.length; ++i) { |
| 322 // FIXME: Only pass runtime wrappers here. | 326 // FIXME: Only pass runtime wrappers here. |
| 323 if (parameters[i] instanceof WebInspector.RemoteObject) | 327 if (parameters[i] instanceof WebInspector.RemoteObject) |
| 324 continue; | 328 continue; |
| 325 | 329 |
| 330 if (!target) { |
| 331 parameters[i] = WebInspector.RemoteObject.fromLocalObject(parame
ters[i]); |
| 332 continue; |
| 333 } |
| 334 |
| 326 if (typeof parameters[i] === "object") | 335 if (typeof parameters[i] === "object") |
| 327 parameters[i] = this._target().runtimeModel.createRemoteObject(p
arameters[i]); | 336 parameters[i] = target.runtimeModel.createRemoteObject(parameter
s[i]); |
| 328 else | 337 else |
| 329 parameters[i] = this._target().runtimeModel.createRemoteObjectFr
omPrimitiveValue(parameters[i]); | 338 parameters[i] = target.runtimeModel.createRemoteObjectFromPrimit
iveValue(parameters[i]); |
| 330 } | 339 } |
| 331 | 340 |
| 332 // There can be string log and string eval result. We distinguish betwee
n them based on message type. | 341 // There can be string log and string eval result. We distinguish betwee
n them based on message type. |
| 333 var shouldFormatMessage = WebInspector.RemoteObject.type(parameters[0])
=== "string" && this._message.type !== WebInspector.ConsoleMessage.MessageType.R
esult; | 342 var shouldFormatMessage = WebInspector.RemoteObject.type(parameters[0])
=== "string" && this._message.type !== WebInspector.ConsoleMessage.MessageType.R
esult; |
| 334 | 343 |
| 335 // Multiple parameters with the first being a format string. Save unused
substitutions. | 344 // Multiple parameters with the first being a format string. Save unused
substitutions. |
| 336 if (shouldFormatMessage) { | 345 if (shouldFormatMessage) { |
| 337 // Multiple parameters with the first being a format string. Save un
used substitutions. | 346 // Multiple parameters with the first being a format string. Save un
used substitutions. |
| 338 var result = this._formatWithSubstitutionString(parameters[0].descri
ption, parameters.slice(1), formattedResult); | 347 var result = this._formatWithSubstitutionString(parameters[0].descri
ption, parameters.slice(1), formattedResult); |
| 339 parameters = result.unusedSubstitutions; | 348 parameters = result.unusedSubstitutions; |
| (...skipping 884 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1224 { | 1233 { |
| 1225 if (!this._wrapperElement) { | 1234 if (!this._wrapperElement) { |
| 1226 WebInspector.ConsoleViewMessage.prototype.toMessageElement.call(this
); | 1235 WebInspector.ConsoleViewMessage.prototype.toMessageElement.call(this
); |
| 1227 this._wrapperElement.classList.toggle("collapsed", this._collapsed); | 1236 this._wrapperElement.classList.toggle("collapsed", this._collapsed); |
| 1228 } | 1237 } |
| 1229 return this._wrapperElement; | 1238 return this._wrapperElement; |
| 1230 }, | 1239 }, |
| 1231 | 1240 |
| 1232 __proto__: WebInspector.ConsoleViewMessage.prototype | 1241 __proto__: WebInspector.ConsoleViewMessage.prototype |
| 1233 } | 1242 } |
| OLD | NEW |