| 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 21 matching lines...) Expand all Loading... |
| 32 * @constructor | 32 * @constructor |
| 33 * | 33 * |
| 34 * @param {!WebInspector.ConsoleMessage} consoleMessage | 34 * @param {!WebInspector.ConsoleMessage} consoleMessage |
| 35 * @param {?WebInspector.Linkifier} linkifier | 35 * @param {?WebInspector.Linkifier} linkifier |
| 36 */ | 36 */ |
| 37 WebInspector.ConsoleViewMessage = function(target, consoleMessage, linkifier) | 37 WebInspector.ConsoleViewMessage = function(target, consoleMessage, linkifier) |
| 38 { | 38 { |
| 39 this._message = consoleMessage; | 39 this._message = consoleMessage; |
| 40 this._linkifier = linkifier; | 40 this._linkifier = linkifier; |
| 41 this._target = target; | 41 this._target = target; |
| 42 this._repeatCount = 1; |
| 42 | 43 |
| 43 /** @type {!Array.<!WebInspector.DataGrid>} */ | 44 /** @type {!Array.<!WebInspector.DataGrid>} */ |
| 44 this._dataGrids = []; | 45 this._dataGrids = []; |
| 45 /** @type {!Map.<!WebInspector.DataGrid, ?Element>} */ | 46 /** @type {!Map.<!WebInspector.DataGrid, ?Element>} */ |
| 46 this._dataGridParents = new Map(); | 47 this._dataGridParents = new Map(); |
| 47 | 48 |
| 48 this._customFormatters = { | 49 this._customFormatters = { |
| 49 "object": this._formatParameterAsObject, | 50 "object": this._formatParameterAsObject, |
| 50 "array": this._formatParameterAsArray, | 51 "array": this._formatParameterAsArray, |
| 51 "node": this._formatParameterAsNode, | 52 "node": this._formatParameterAsNode, |
| (...skipping 822 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 874 case WebInspector.ConsoleMessage.MessageLevel.Info: | 875 case WebInspector.ConsoleMessage.MessageLevel.Info: |
| 875 element.classList.add("console-info-level"); | 876 element.classList.add("console-info-level"); |
| 876 break; | 877 break; |
| 877 } | 878 } |
| 878 | 879 |
| 879 if (this._message.type === WebInspector.ConsoleMessage.MessageType.Start
Group || this._message.type === WebInspector.ConsoleMessage.MessageType.StartGro
upCollapsed) | 880 if (this._message.type === WebInspector.ConsoleMessage.MessageType.Start
Group || this._message.type === WebInspector.ConsoleMessage.MessageType.StartGro
upCollapsed) |
| 880 element.classList.add("console-group-title"); | 881 element.classList.add("console-group-title"); |
| 881 | 882 |
| 882 element.appendChild(this.formattedMessage()); | 883 element.appendChild(this.formattedMessage()); |
| 883 | 884 |
| 884 if (this._message.repeatCount > 1) | 885 if (this._repeatCount > 1) |
| 885 this.updateRepeatCount(); | 886 this._showRepeatCountElement(); |
| 886 | 887 |
| 887 return element; | 888 return element; |
| 888 }, | 889 }, |
| 889 | 890 |
| 890 _populateStackTraceTreeElement: function(parentTreeElement) | 891 _populateStackTraceTreeElement: function(parentTreeElement) |
| 891 { | 892 { |
| 892 for (var i = 0; i < this._message.stackTrace.length; i++) { | 893 for (var i = 0; i < this._message.stackTrace.length; i++) { |
| 893 var frame = this._message.stackTrace[i]; | 894 var frame = this._message.stackTrace[i]; |
| 894 | 895 |
| 895 var content = document.createElementWithClass("div", "stacktrace-ent
ry"); | 896 var content = document.createElementWithClass("div", "stacktrace-ent
ry"); |
| 896 var messageTextElement = document.createElement("span"); | 897 var messageTextElement = document.createElement("span"); |
| 897 messageTextElement.className = "console-message-text source-code"; | 898 messageTextElement.className = "console-message-text source-code"; |
| 898 var functionName = frame.functionName || WebInspector.UIString("(ano
nymous function)"); | 899 var functionName = frame.functionName || WebInspector.UIString("(ano
nymous function)"); |
| 899 messageTextElement.appendChild(document.createTextNode(functionName)
); | 900 messageTextElement.appendChild(document.createTextNode(functionName)
); |
| 900 content.appendChild(messageTextElement); | 901 content.appendChild(messageTextElement); |
| 901 | 902 |
| 902 if (frame.scriptId) { | 903 if (frame.scriptId) { |
| 903 content.appendChild(document.createTextNode(" ")); | 904 content.appendChild(document.createTextNode(" ")); |
| 904 var urlElement = this._linkifyCallFrame(frame); | 905 var urlElement = this._linkifyCallFrame(frame); |
| 905 if (!urlElement) | 906 if (!urlElement) |
| 906 continue; | 907 continue; |
| 907 content.appendChild(urlElement); | 908 content.appendChild(urlElement); |
| 908 } | 909 } |
| 909 | 910 |
| 910 var treeElement = new TreeElement(content); | 911 var treeElement = new TreeElement(content); |
| 911 parentTreeElement.appendChild(treeElement); | 912 parentTreeElement.appendChild(treeElement); |
| 912 } | 913 } |
| 913 }, | 914 }, |
| 914 | 915 |
| 915 updateRepeatCount: function() { | 916 incrementRepeatCount: function() |
| 917 { |
| 918 this._repeatCount++; |
| 919 this._showRepeatCountElement(); |
| 920 }, |
| 921 |
| 922 _showRepeatCountElement: function() |
| 923 { |
| 916 if (!this._element) | 924 if (!this._element) |
| 917 return; | 925 return; |
| 918 | 926 |
| 919 if (!this.repeatCountElement) { | 927 if (!this.repeatCountElement) { |
| 920 this.repeatCountElement = document.createElement("span"); | 928 this.repeatCountElement = document.createElement("span"); |
| 921 this.repeatCountElement.className = "bubble"; | 929 this.repeatCountElement.className = "bubble"; |
| 922 | 930 |
| 923 this._element.insertBefore(this.repeatCountElement, this._element.fi
rstChild); | 931 this._element.insertBefore(this.repeatCountElement, this._element.fi
rstChild); |
| 924 this._element.classList.add("repeated-message"); | 932 this._element.classList.add("repeated-message"); |
| 925 } | 933 } |
| 926 this.repeatCountElement.textContent = this._message.repeatCount; | 934 this.repeatCountElement.textContent = this._repeatCount; |
| 927 }, | 935 }, |
| 928 | 936 |
| 929 /** | 937 /** |
| 930 * @return {string} | 938 * @return {string} |
| 931 */ | 939 */ |
| 932 toString: function() | 940 toString: function() |
| 933 { | 941 { |
| 934 var sourceString; | 942 var sourceString; |
| 935 switch (this._message.source) { | 943 switch (this._message.source) { |
| 936 case WebInspector.ConsoleMessage.MessageSource.XML: | 944 case WebInspector.ConsoleMessage.MessageSource.XML: |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1018 } | 1026 } |
| 1019 | 1027 |
| 1020 return sourceString + " " + typeString + " " + levelString + ": " + this
.formattedMessage().textContent + "\n" + this._message.url + " line " + this._me
ssage.line; | 1028 return sourceString + " " + typeString + " " + levelString + ": " + this
.formattedMessage().textContent + "\n" + this._message.url + " line " + this._me
ssage.line; |
| 1021 }, | 1029 }, |
| 1022 | 1030 |
| 1023 get text() | 1031 get text() |
| 1024 { | 1032 { |
| 1025 return this._message.messageText; | 1033 return this._message.messageText; |
| 1026 } | 1034 } |
| 1027 } | 1035 } |
| OLD | NEW |