Diff
Modified: trunk/Source/WebInspectorUI/ChangeLog (238501 => 238502)
--- trunk/Source/WebInspectorUI/ChangeLog 2018-11-26 18:26:48 UTC (rev 238501)
+++ trunk/Source/WebInspectorUI/ChangeLog 2018-11-26 19:01:04 UTC (rev 238502)
@@ -1,5 +1,37 @@
2018-11-26 Devin Rousso <[email protected]>
+ Web Inspector: "No Filter Results" in navigation sidebar should have a button to clear filters
+ https://bugs.webkit.org/show_bug.cgi?id=191916
+
+ Reviewed by Joseph Pecoraro.
+
+ * UserInterface/Views/NavigationSidebarPanel.js:
+ (WI.NavigationSidebarPanel.prototype.resetFilter): Added.
+ (WI.NavigationSidebarPanel.prototype._checkForEmptyFilterResults.checkTreeOutlineForEmptyFilterResults):
+
+ * UserInterface/Views/FilterBar.js:
+ (WI.FilterBar.prototype.clear):
+
+ * UserInterface/Views/FilterBarButton.js:
+ (WI.FilterBarButton.prototype.toggle):
+
+ * UserInterface/Views/ResourceSidebarPanel.js:
+ (WI.ResourceSidebarPanel.prototype.resetFilter): Added.
+ * UserInterface/Views/StorageSidebarPanel.js:
+ (WI.StorageSidebarPanel.prototype.resetFilter): Added.
+
+ * UserInterface/Views/AuditTestContentView.js:
+ (WI.AuditTestContentView.prototype.showFilteredPlaceholder):
+ * UserInterface/Views/NetworkTableContentView.js:
+ (WI.NetworkTableContentView.prototype._showEmptyFilterResultsMessage):
+
+ * UserInterface/Views/Main.css:
+ (.message-text-view > .message + button): Added.
+
+ * Localizations/en.lproj/localizedStrings.js:
+
+2018-11-26 Devin Rousso <[email protected]>
+
Web Inspector: Audit: automatically add to tab bar when the experimental setting is enabled
https://bugs.webkit.org/show_bug.cgi?id=191659
Modified: trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js (238501 => 238502)
--- trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js 2018-11-26 18:26:48 UTC (rev 238501)
+++ trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js 2018-11-26 19:01:04 UTC (rev 238502)
@@ -186,10 +186,10 @@
localizedStrings["Child added to "] = "Child added to ";
localizedStrings["Children"] = "Children";
localizedStrings["Classes"] = "Classes";
+localizedStrings["Clear Filters"] = "Clear Filters";
localizedStrings["Clear Log"] = "Clear Log";
localizedStrings["Clear Network Items (%s)"] = "Clear Network Items (%s)";
localizedStrings["Clear Timeline (%s)"] = "Clear Timeline (%s)";
-localizedStrings["Clear filters"] = "Clear filters";
localizedStrings["Clear focus"] = "Clear focus";
localizedStrings["Clear log (%s or %s)"] = "Clear log (%s or %s)";
localizedStrings["Clear object store"] = "Clear object store";
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/AuditTestContentView.js (238501 => 238502)
--- trunk/Source/WebInspectorUI/UserInterface/Views/AuditTestContentView.js 2018-11-26 18:26:48 UTC (rev 238501)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/AuditTestContentView.js 2018-11-26 19:01:04 UTC (rev 238502)
@@ -204,7 +204,7 @@
this.placeholderElement.__placeholderFiltered = true;
let buttonElement = this.placeholderElement.appendChild(document.createElement("button"));
- buttonElement.textContent = WI.UIString("Clear filters");
+ buttonElement.textContent = WI.UIString("Clear Filters");
buttonElement.addEventListener("click", () => {
this.resetFilter();
this.needsLayout();
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/FilterBar.js (238501 => 238502)
--- trunk/Source/WebInspectorUI/UserInterface/Views/FilterBar.js 2018-11-26 18:26:48 UTC (rev 238501)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/FilterBar.js 2018-11-26 19:01:04 UTC (rev 238502)
@@ -118,9 +118,17 @@
clear()
{
- this._inputField.value = "";
+ this._filterFunctionsMap.clear();
+ this.filters = null;
+
+ // Only toggle the `WI.FilterBarButton`s after clearing the function map, as otherwise each
+ // toggle will fire another WI.FilterBar.Event.FilterDidChange event.
+ for (let navigationItem of this._filtersNavigationBar.navigationItems) {
+ if (navigationItem instanceof WI.FilterBarButton)
+ navigationItem.toggle(false);
+ }
+
this._inputField.value = null; // Get the placeholder to show again.
- this._lastFilterValue = this.filters;
}
addFilterBarButton(identifier, filterFunction, activatedByDefault, defaultToolTip, activatedToolTip, image, imageWidth, imageHeight)
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/FilterBarButton.js (238501 => 238502)
--- trunk/Source/WebInspectorUI/UserInterface/Views/FilterBarButton.js 2018-11-26 18:26:48 UTC (rev 238501)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/FilterBarButton.js 2018-11-26 19:01:04 UTC (rev 238502)
@@ -43,9 +43,9 @@
return this._filterFunction;
}
- toggle()
+ toggle(value)
{
- this.activated = !this.activated;
+ this.activated = value === undefined ? !this.activated : value;
this._activatedSetting.value = this.activated;
this.dispatchEventToListeners(WI.FilterBarButton.Event.ActivatedStateToggled);
}
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/Main.css (238501 => 238502)
--- trunk/Source/WebInspectorUI/UserInterface/Views/Main.css 2018-11-26 18:26:48 UTC (rev 238501)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/Main.css 2018-11-26 19:01:04 UTC (rev 238502)
@@ -189,6 +189,10 @@
font-size: var(--message-text-view-font-size);
}
+.message-text-view > .message + button {
+ margin-bottom: 15px;
+}
+
.message-text-view .navigation-item-help {
display: block;
line-height: 22px;
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/NavigationSidebarPanel.js (238501 => 238502)
--- trunk/Source/WebInspectorUI/UserInterface/Views/NavigationSidebarPanel.js 2018-11-26 18:26:48 UTC (rev 238501)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/NavigationSidebarPanel.js 2018-11-26 19:01:04 UTC (rev 238502)
@@ -308,6 +308,11 @@
this._updateFilter();
}
+ resetFilter()
+ {
+ this._filterBar.clear();
+ }
+
shouldFilterPopulate()
{
// Overridden by subclasses if needed.
@@ -513,8 +518,16 @@
return;
}
+ let message = WI.createMessageTextView(WI.UIString("No Filter Results"));
+
+ let buttonElement = message.appendChild(document.createElement("button"));
+ buttonElement.textContent = WI.UIString("Clear Filters");
+ buttonElement.addEventListener("click", () => {
+ this.resetFilter();
+ });
+
// All top level tree elements are hidden, so filtering hid everything. Show a message.
- this.showEmptyContentPlaceholder(WI.UIString("No Filter Results"), treeOutline);
+ this.showEmptyContentPlaceholder(message, treeOutline);
this._emptyFilterResults.set(treeOutline, true);
}
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTableContentView.js (238501 => 238502)
--- trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTableContentView.js 2018-11-26 18:26:48 UTC (rev 238501)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/NetworkTableContentView.js 2018-11-26 19:01:04 UTC (rev 238502)
@@ -1372,7 +1372,7 @@
{
if (!this._emptyFilterResultsMessageElement) {
let buttonElement = document.createElement("button");
- buttonElement.textContent = WI.UIString("Clear filters");
+ buttonElement.textContent = WI.UIString("Clear Filters");
buttonElement.addEventListener("click", () => { this._resetFilters(); });
this._emptyFilterResultsMessageElement = WI.createMessageTextView(WI.UIString("No Filter Results"));
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/ResourceSidebarPanel.js (238501 => 238502)
--- trunk/Source/WebInspectorUI/UserInterface/Views/ResourceSidebarPanel.js 2018-11-26 18:26:48 UTC (rev 238501)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/ResourceSidebarPanel.js 2018-11-26 19:01:04 UTC (rev 238502)
@@ -208,6 +208,13 @@
}
}
+ resetFilter()
+ {
+ this._scopeBar.resetToDefault();
+
+ super.resetFilter();
+ }
+
hasCustomFilters()
{
console.assert(this._scopeBar.selectedItems.length === 1);
Modified: trunk/Source/WebInspectorUI/UserInterface/Views/StorageSidebarPanel.js (238501 => 238502)
--- trunk/Source/WebInspectorUI/UserInterface/Views/StorageSidebarPanel.js 2018-11-26 18:26:48 UTC (rev 238501)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/StorageSidebarPanel.js 2018-11-26 19:01:04 UTC (rev 238502)
@@ -128,6 +128,13 @@
// Protected
+ resetFilter()
+ {
+ this._scopeBar.resetToDefault();
+
+ super.resetFilter();
+ }
+
hasCustomFilters()
{
console.assert(this._scopeBar.selectedItems.length === 1);