Title: [238502] trunk/Source/WebInspectorUI
Revision
238502
Author
[email protected]
Date
2018-11-26 11:01:04 -0800 (Mon, 26 Nov 2018)

Log Message

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:

Modified Paths

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);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to