Title: [181437] trunk/Source/WebInspectorUI
- Revision
- 181437
- Author
- [email protected]
- Date
- 2015-03-12 09:10:00 -0700 (Thu, 12 Mar 2015)
Log Message
Web Inspector: Console Errors during provisional document loads get lost with "Clear Log on Reload"
https://bugs.webkit.org/show_bug.cgi?id=142603
Patch by Joseph Pecoraro <[email protected]> on 2015-03-12
Reviewed by Timothy Hatcher.
* UserInterface/Views/LogContentView.js:
(WebInspector.LogContentView.prototype._messageAdded):
(WebInspector.LogContentView.prototype._provisionalLoadStarted):
Detect a provisional load has started to start save messages that come in at this time.
(WebInspector.LogContentView.prototype._sessionStarted):
Reappend provisional load messages if we auto-cleared.
(WebInspector.LogContentView.prototype._reappendProvisionalMessages):
(WebInspector.LogContentView.prototype._clearProvisionalState):
Helpers for dealing with the provisional loading state.
Modified Paths
Diff
Modified: trunk/Source/WebInspectorUI/ChangeLog (181436 => 181437)
--- trunk/Source/WebInspectorUI/ChangeLog 2015-03-12 14:50:21 UTC (rev 181436)
+++ trunk/Source/WebInspectorUI/ChangeLog 2015-03-12 16:10:00 UTC (rev 181437)
@@ -1,3 +1,22 @@
+2015-03-12 Joseph Pecoraro <[email protected]>
+
+ Web Inspector: Console Errors during provisional document loads get lost with "Clear Log on Reload"
+ https://bugs.webkit.org/show_bug.cgi?id=142603
+
+ Reviewed by Timothy Hatcher.
+
+ * UserInterface/Views/LogContentView.js:
+ (WebInspector.LogContentView.prototype._messageAdded):
+ (WebInspector.LogContentView.prototype._provisionalLoadStarted):
+ Detect a provisional load has started to start save messages that come in at this time.
+
+ (WebInspector.LogContentView.prototype._sessionStarted):
+ Reappend provisional load messages if we auto-cleared.
+
+ (WebInspector.LogContentView.prototype._reappendProvisionalMessages):
+ (WebInspector.LogContentView.prototype._clearProvisionalState):
+ Helpers for dealing with the provisional loading state.
+
2015-03-11 Joseph Pecoraro <[email protected]>
Web Inspector: CSS parser errors in the console should include column numbers
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/LogContentView.js (181436 => 181437)
--- trunk/Source/WebInspectorUI/UserInterface/Views/LogContentView.js 2015-03-12 14:50:21 UTC (rev 181436)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/LogContentView.js 2015-03-12 16:10:00 UTC (rev 181437)
@@ -30,6 +30,9 @@
this._nestingLevel = 0;
this._selectedMessages = [];
+ // FIXME: Try to use a marker, instead of a list of messages that get re-added.
+ this._provisionalMessages = [];
+
this.element.classList.add(WebInspector.LogContentView.StyleClassName);
this.messagesElement = document.createElement("div");
@@ -88,6 +91,8 @@
WebInspector.logManager.addEventListener(WebInspector.LogManager.Event.MessageAdded, this._messageAdded, this);
WebInspector.logManager.addEventListener(WebInspector.LogManager.Event.PreviousMessageRepeatCountUpdated, this._previousMessageRepeatCountUpdated, this);
WebInspector.logManager.addEventListener(WebInspector.LogManager.Event.ActiveLogCleared, this._activeLogCleared, this);
+
+ WebInspector.Frame.addEventListener(WebInspector.Frame.Event.ProvisionalLoadStarted, this._provisionalLoadStarted, this);
};
WebInspector.LogContentView.Scopes = {
@@ -310,14 +315,20 @@
{
if (this._clearLogOnReloadSetting.value) {
this._clearLog();
+ this._reappendProvisionalMessages();
return;
}
this._logViewController.startNewSession();
+
+ this._clearProvisionalState();
},
_messageAdded: function(event)
{
+ if (this._startedProvisionalLoad)
+ this._provisionalMessages.push(event.data.message);
+
var message = this._logViewController.appendConsoleMessage(event.data.message);
if (message.type !== WebInspector.ConsoleMessage.MessageType.EndGroup)
this._filterMessages([message.toMessageElement()]);
@@ -969,6 +980,33 @@
this._selectedSearchMatch.highlight.classList.add(WebInspector.LogContentView.SelectedStyleClassName);
this._ensureMessageIsVisible(this._selectedSearchMatch.message);
+ },
+
+ _provisionalLoadStarted: function()
+ {
+ this._startedProvisionalLoad = true;
+ },
+
+ _reappendProvisionalMessages: function()
+ {
+ if (!this._startedProvisionalLoad)
+ return;
+
+ this._startedProvisionalLoad = false;
+
+ for (var provisionalMessage of this._provisionalMessages) {
+ var message = this._logViewController.appendConsoleMessage(provisionalMessage);
+ if (message.type !== WebInspector.ConsoleMessage.MessageType.EndGroup)
+ this._filterMessages([message.toMessageElement()]);
+ }
+
+ this._provisionalMessages = [];
+ },
+
+ _clearProvisionalState: function()
+ {
+ this._startedProvisionalLoad = false;
+ this._provisionalMessages = [];
}
};
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes