REGRESSION(r250948): Web Inspector: Styles: CSS selector becomes gray after stopping editing without modifying it
https://bugs.webkit.org/show_bug.cgi?id=202781

Reviewed by Matt Baker.

When not editing, CSS selectors that match the selected node are highlighted (black in the light mode,
white in the dark mode). When editing starts, span elements that provide highlighting get removed.
When editing stops, active selectors should get highlighted.

r250948 stopped calling `_renderSelector` when selector wasn't modified.

* UserInterface/Views/SpreadsheetCSSStyleDeclarationSection.js:
(WI.SpreadsheetCSSStyleDeclarationSection.prototype.spreadsheetSelectorFieldDidCommit):
* UserInterface/Views/SpreadsheetSelectorField.js:
(WI.SpreadsheetSelectorField.prototype._handleBlur):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@250955 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebInspectorUI/ChangeLog b/Source/WebInspectorUI/ChangeLog
index 130c859..4876389 100644
--- a/Source/WebInspectorUI/ChangeLog
+++ b/Source/WebInspectorUI/ChangeLog
@@ -1,5 +1,23 @@
 2019-10-09  Nikita Vasilyev  <nvasilyev@apple.com>
 
+        REGRESSION(r250948): Web Inspector: Styles: CSS selector becomes gray after stopping editing without modifying it
+        https://bugs.webkit.org/show_bug.cgi?id=202781
+
+        Reviewed by Matt Baker.
+
+        When not editing, CSS selectors that match the selected node are highlighted (black in the light mode,
+        white in the dark mode). When editing starts, span elements that provide highlighting get removed.
+        When editing stops, active selectors should get highlighted.
+
+        r250948 stopped calling `_renderSelector` when selector wasn't modified.
+
+        * UserInterface/Views/SpreadsheetCSSStyleDeclarationSection.js:
+        (WI.SpreadsheetCSSStyleDeclarationSection.prototype.spreadsheetSelectorFieldDidCommit):
+        * UserInterface/Views/SpreadsheetSelectorField.js:
+        (WI.SpreadsheetSelectorField.prototype._handleBlur):
+
+2019-10-09  Nikita Vasilyev  <nvasilyev@apple.com>
+
         Web Inspector: Modifying CSS selector by pressing Enter or Tab causes 2 CSS.setRuleSelector backend calls
         https://bugs.webkit.org/show_bug.cgi?id=202769
         <rdar://problem/56132166>
diff --git a/Source/WebInspectorUI/UserInterface/Views/SpreadsheetCSSStyleDeclarationSection.js b/Source/WebInspectorUI/UserInterface/Views/SpreadsheetCSSStyleDeclarationSection.js
index dd272a6..6d8f236 100644
--- a/Source/WebInspectorUI/UserInterface/Views/SpreadsheetCSSStyleDeclarationSection.js
+++ b/Source/WebInspectorUI/UserInterface/Views/SpreadsheetCSSStyleDeclarationSection.js
@@ -226,10 +226,10 @@
 
     // SpreadsheetSelectorField delegate
 
-    spreadsheetSelectorFieldDidCommit()
+    spreadsheetSelectorFieldDidCommit(changed)
     {
         let selectorText = this._selectorElement.textContent.trim();
-        if (selectorText) {
+        if (selectorText && changed) {
             this.dispatchEventToListeners(WI.SpreadsheetCSSStyleDeclarationSection.Event.SelectorWillChange);
             this._style.ownerRule.singleFireEventListener(WI.CSSRule.Event.SelectorChanged, this._renderSelector, this);
             this._style.ownerRule.selectorText = selectorText;
diff --git a/Source/WebInspectorUI/UserInterface/Views/SpreadsheetSelectorField.js b/Source/WebInspectorUI/UserInterface/Views/SpreadsheetSelectorField.js
index 64f16fc..f1b9f1a 100644
--- a/Source/WebInspectorUI/UserInterface/Views/SpreadsheetSelectorField.js
+++ b/Source/WebInspectorUI/UserInterface/Views/SpreadsheetSelectorField.js
@@ -111,8 +111,8 @@
             return;
 
         if (this._delegate && typeof this._delegate.spreadsheetSelectorFieldDidCommit === "function") {
-            if (this._element.textContent !== this._valueBeforeEditing)
-                this._delegate.spreadsheetSelectorFieldDidCommit();
+            let changed = this._element.textContent !== this._valueBeforeEditing;
+            this._delegate.spreadsheetSelectorFieldDidCommit(changed);
         }
 
         this.stopEditing();