Title: [219900] trunk/Source/WebInspectorUI
- Revision
- 219900
- Author
- commit-qu...@webkit.org
- Date
- 2017-07-25 19:27:08 -0700 (Tue, 25 Jul 2017)
Log Message
Web Inspector: Don't output "No message" for multi-value logs like console.log(x, y)
https://bugs.webkit.org/show_bug.cgi?id=174842
Patch by Joseph Pecoraro <pecor...@apple.com> on 2017-07-25
Reviewed by Matt Baker.
* Localizations/en.lproj/localizedStrings.js:
Removed "No message".
* UserInterface/Views/ConsoleMessageView.js:
(WebInspector.ConsoleMessageView.prototype._appendFormattedArguments):
Track whether or not outputting the next parameter will need a divider
in front of it or not.
Modified Paths
Diff
Modified: trunk/Source/WebInspectorUI/ChangeLog (219899 => 219900)
--- trunk/Source/WebInspectorUI/ChangeLog 2017-07-26 02:23:01 UTC (rev 219899)
+++ trunk/Source/WebInspectorUI/ChangeLog 2017-07-26 02:27:08 UTC (rev 219900)
@@ -1,5 +1,20 @@
2017-07-25 Joseph Pecoraro <pecor...@apple.com>
+ Web Inspector: Don't output "No message" for multi-value logs like console.log(x, y)
+ https://bugs.webkit.org/show_bug.cgi?id=174842
+
+ Reviewed by Matt Baker.
+
+ * Localizations/en.lproj/localizedStrings.js:
+ Removed "No message".
+
+ * UserInterface/Views/ConsoleMessageView.js:
+ (WebInspector.ConsoleMessageView.prototype._appendFormattedArguments):
+ Track whether or not outputting the next parameter will need a divider
+ in front of it or not.
+
+2017-07-25 Joseph Pecoraro <pecor...@apple.com>
+
Web Inspector: Fix warnings about console.assert lines without semicolons
https://bugs.webkit.org/show_bug.cgi?id=174840
Modified: trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js (219899 => 219900)
--- trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js 2017-07-26 02:23:01 UTC (rev 219899)
+++ trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js 2017-07-26 02:27:08 UTC (rev 219900)
@@ -586,7 +586,6 @@
localizedStrings["No Search Results"] = "No Search Results";
localizedStrings["No Watch Expressions"] = "No Watch Expressions";
localizedStrings["No matching ARIA role"] = "No matching ARIA role";
-localizedStrings["No message"] = "No message";
localizedStrings["No preview available"] = "No preview available";
localizedStrings["Node"] = "Node";
localizedStrings["Node Removed"] = "Node Removed";
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ConsoleMessageView.js (219899 => 219900)
--- trunk/Source/WebInspectorUI/UserInterface/Views/ConsoleMessageView.js 2017-07-26 02:23:01 UTC (rev 219899)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ConsoleMessageView.js 2017-07-26 02:27:08 UTC (rev 219900)
@@ -444,14 +444,22 @@
if (shouldFormatWithStringSubstitution && this._isStackTrace(parameters[0]))
shouldFormatWithStringSubstitution = false;
- // Format string / message / default message.
+ let needsDivider = false;
+ function appendDividerIfNeeded() {
+ if (!needsDivider)
+ return null;
+ let element = builderElement.appendChild(document.createElement("span"));
+ element.classList.add("console-message-preview-divider");
+ element.textContent = ` ${enDash} `;
+ return element;
+ }
+
+ // Format string.
if (shouldFormatWithStringSubstitution) {
let result = this._formatWithSubstitutionString(parameters, builderElement);
parameters = result.unusedSubstitutions;
this._extraParameters = parameters;
- } else {
- let defaultMessage = WebInspector.UIString("No message");
- builderElement.append(defaultMessage);
+ needsDivider = true;
}
// Trailing inline parameters.
@@ -469,9 +477,9 @@
this._extraParameters = parameters;
for (let parameter of simpleParameters) {
- let enclosedElement = builderElement.appendChild(document.createElement("span"));
- enclosedElement.classList.add("console-message-preview-divider", "inline-lossless");
- enclosedElement.textContent = ` ${enDash} `;
+ let dividerElement = appendDividerIfNeeded();
+ if (dividerElement)
+ dividerElement.classList.add("inline-lossless");
let previewContainer = builderElement.appendChild(document.createElement("span"));
previewContainer.classList.add("inline-lossless");
@@ -485,6 +493,8 @@
let previewElement = isPreviewView ? preview.element : preview;
previewContainer.appendChild(previewElement);
+ needsDivider = true;
+
// Simple displayable parameters should pretty much always be lossless.
// An exception might be a truncated string.
console.assert((isPreviewView && preview.lossless) || (!isPreviewView && this._shouldConsiderObjectLossless(parameter)));
@@ -495,9 +505,7 @@
if (parameters.length === 1 && !this._isStackTrace(parameters[0])) {
let parameter = parameters[0];
- let enclosedElement = builderElement.appendChild(document.createElement("span"));
- enclosedElement.classList.add("console-message-preview-divider");
- enclosedElement.textContent = ` ${enDash} `;
+ let dividerElement = appendDividerIfNeeded();
let previewContainer = builderElement.appendChild(document.createElement("span"));
previewContainer.classList.add("console-message-preview");
@@ -511,10 +519,13 @@
let previewElement = isPreviewView ? preview.element : preview;
previewContainer.appendChild(previewElement);
+ needsDivider = true;
+
// If this preview is effectively lossless, we can avoid making this console message expandable.
if ((isPreviewView && preview.lossless) || (!isPreviewView && this._shouldConsiderObjectLossless(parameter))) {
this._extraParameters = null;
- enclosedElement.classList.add("inline-lossless");
+ if (dividerElement)
+ dividerElement.classList.add("inline-lossless");
previewContainer.classList.add("inline-lossless");
}
} else if (parameters.length) {
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes