Index: Source/devtools/front_end/console/ConsoleView.js |
diff --git a/Source/devtools/front_end/console/ConsoleView.js b/Source/devtools/front_end/console/ConsoleView.js |
index 676ab02384638028e793f59677797057ebefcfa4..7894a20c5a8748318eaa5ba99afe13fb1a65a66e 100644 |
--- a/Source/devtools/front_end/console/ConsoleView.js |
+++ b/Source/devtools/front_end/console/ConsoleView.js |
@@ -136,6 +136,7 @@ WebInspector.ConsoleView = function() |
/** @type {!Array.<!WebInspector.ConsoleViewMessage>} */ |
this._consoleMessages = []; |
+ this._viewMessageSymbol = Symbol("viewMessage"); |
this._prompt = new WebInspector.TextPromptWithHistory(WebInspector.ExecutionContextSelector.completionsForTextPromptInCurrentContext); |
this._prompt.setSuggestBoxEnabled(true); |
@@ -299,7 +300,7 @@ WebInspector.ConsoleView.prototype = { |
break; |
} |
- var consoleMessage = new WebInspector.ConsoleMessage(null, WebInspector.ConsoleMessage.MessageSource.Other, level, message.text, |
+ var consoleMessage = new WebInspector.ConsoleMessage(null, 0, WebInspector.ConsoleMessage.MessageSource.Other, level, message.text, |
undefined, undefined, undefined, undefined, undefined, undefined, undefined, message.timestamp); |
this._addConsoleMessage(consoleMessage); |
}, |
@@ -557,9 +558,21 @@ WebInspector.ConsoleView.prototype = { |
return WebInspector.ConsoleMessage.timestampComparator(viewMessage1.consoleMessage(), viewMessage2.consoleMessage()); |
} |
+ if (message.level === WebInspector.ConsoleMessage.MessageLevel.RevokedError) { |
+ var relatedMessage = message.relatedMessage(); |
+ if (relatedMessage) { |
+ relatedMessage.level = WebInspector.ConsoleMessage.MessageLevel.RevokedError; |
dgozman
2015/04/21 09:16:35
Why does view mutate model objects? Let's move thi
pfeldman
2015/04/21 12:15:27
Done.
|
+ var viewMessage = relatedMessage[this._viewMessageSymbol]; |
+ if (viewMessage) |
+ viewMessage.updateMessageElement(); |
+ } |
+ return; |
+ } |
+ |
if (message.type === WebInspector.ConsoleMessage.MessageType.Command || message.type === WebInspector.ConsoleMessage.MessageType.Result) |
message.timestamp = this._consoleMessages.length ? this._consoleMessages.peekLast().consoleMessage().timestamp : 0; |
var viewMessage = this._createViewMessage(message); |
+ message[this._viewMessageSymbol] = viewMessage; |
dgozman
2015/04/21 09:16:35
I think we will not get rid of this, even if we co
pfeldman
2015/04/21 12:15:27
Model and ui messages go hand in hand. When model
|
var insertAt = insertionIndexForObjectInListSortedByFunction(viewMessage, this._consoleMessages, compareTimestamps, true); |
var insertedInMiddle = insertAt < this._consoleMessages.length; |
this._consoleMessages.splice(insertAt, 0, viewMessage); |
@@ -607,8 +620,8 @@ WebInspector.ConsoleView.prototype = { |
return; |
} |
if (!this._currentGroup.messagesHidden()) { |
- var originatingMessage = viewMessage.consoleMessage().originatingMessage(); |
- if (lastMessage && originatingMessage && lastMessage.consoleMessage() === originatingMessage) |
+ var relatedMessage = viewMessage.consoleMessage().relatedMessage(); |
+ if (lastMessage && relatedMessage && relatedMessage.type === WebInspector.ConsoleMessage.MessageType.Command && lastMessage.consoleMessage() === relatedMessage) |
lastMessage.toMessageElement().classList.add("console-adjacent-user-command-result"); |
this._visibleViewMessages.push(viewMessage); |
@@ -915,10 +928,11 @@ WebInspector.ConsoleView.prototype = { |
var level = wasThrown ? WebInspector.ConsoleMessage.MessageLevel.Error : WebInspector.ConsoleMessage.MessageLevel.Log; |
var message; |
if (!wasThrown) |
- message = new WebInspector.ConsoleMessage(result.target(), WebInspector.ConsoleMessage.MessageSource.JS, level, "", WebInspector.ConsoleMessage.MessageType.Result, undefined, undefined, undefined, undefined, [result]); |
+ message = new WebInspector.ConsoleMessage(result.target(), 0, WebInspector.ConsoleMessage.MessageSource.JS, level, "", WebInspector.ConsoleMessage.MessageType.Result, undefined, undefined, undefined, undefined, [result]); |
else |
- message = new WebInspector.ConsoleMessage(result.target(), WebInspector.ConsoleMessage.MessageSource.JS, level, exceptionDetails.text, WebInspector.ConsoleMessage.MessageType.Result, exceptionDetails.url, exceptionDetails.line, exceptionDetails.column, undefined, [WebInspector.UIString("Uncaught"), result], exceptionDetails.stackTrace, undefined, undefined, undefined, exceptionDetails.scriptId); |
- message.setOriginatingMessage(originatingConsoleMessage); |
+ message = new WebInspector.ConsoleMessage(result.target(), 0, WebInspector.ConsoleMessage.MessageSource.JS, level, exceptionDetails.text, WebInspector.ConsoleMessage.MessageType.Result, exceptionDetails.url, exceptionDetails.line, exceptionDetails.column, undefined, [WebInspector.UIString("Uncaught"), result], exceptionDetails.stackTrace, undefined, undefined, undefined, exceptionDetails.scriptId); |
+ message.setRelatedMessage(originatingConsoleMessage); |
+ message.executionContextId = originatingConsoleMessage.executionContextId; |
result.target().consoleModel.addMessage(message); |
}, |