Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1637)

Unified Diff: Source/devtools/front_end/console/ConsoleView.js

Issue 1095943002: DevTools: [console] Logged promise rejections do not change state once handled (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: comments addressed Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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);
},

Powered by Google App Engine
This is Rietveld 408576698