Title: [295164] trunk/Source/WebInspectorUI/UserInterface
Revision
295164
Author
pan...@apple.com
Date
2022-06-02 18:04:41 -0700 (Thu, 02 Jun 2022)

Log Message

Web Inspector: Layout overlay color swatches don't update saved color until popover is dismissed
https://bugs.webkit.org/show_bug.cgi?id=241244
rdar://94318762

Reviewed by Devin Rousso.

We should save all changes to layout overlay color, not just the state when you close the color picker popover. Not
doing this causes a few issues:
1. DOM node badge colors don't update as you dynamically adjust the color for an overlay.
2. The new "sample color from screen" can be used without opening the popover for the color picker, which means these
changes are never saved.

Canonical link: https://commits.webkit.org/251248@main

Modified Paths

Diff

Modified: trunk/Source/WebInspectorUI/UserInterface/Models/DOMNode.js (295163 => 295164)


--- trunk/Source/WebInspectorUI/UserInterface/Models/DOMNode.js	2022-06-03 00:54:43 UTC (rev 295163)
+++ trunk/Source/WebInspectorUI/UserInterface/Models/DOMNode.js	2022-06-03 01:04:41 UTC (rev 295164)
@@ -709,6 +709,9 @@
 
         this._createLayoutOverlayColorSettingIfNeeded();
         this._layoutOverlayColorSetting.value = color.hsl;
+
+        if (this._layoutOverlayShowing)
+            this.showLayoutOverlay({color});
     }
 
     scrollIntoView()

Modified: trunk/Source/WebInspectorUI/UserInterface/Views/NodeOverlayListSection.js (295163 => 295164)


--- trunk/Source/WebInspectorUI/UserInterface/Views/NodeOverlayListSection.js	2022-06-03 00:54:43 UTC (rev 295163)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/NodeOverlayListSection.js	2022-06-03 01:04:41 UTC (rev 295164)
@@ -125,11 +125,6 @@
             itemContainerElement.append(swatch.element);
 
             swatch.addEventListener(WI.InlineSwatch.Event.ValueChanged, (event) => {
-                if (checkboxElement?.checked)
-                    domNode.showLayoutOverlay({color: event.data.value});
-            }, swatch);
-
-            swatch.addEventListener(WI.InlineSwatch.Event.Deactivated, (event) => {
                 domNode.layoutOverlayColor = event.target.value;
             }, swatch);
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to