Title: [201243] trunk/Source/WebInspectorUI
Revision
201243
Author
[email protected]
Date
2016-05-21 11:42:21 -0700 (Sat, 21 May 2016)

Log Message

Assertion Failed: StyleDetailsPanel.markAsNeedsRefresh() called with null domNode
https://bugs.webkit.org/show_bug.cgi?id=157955
<rdar://problem/26398943>

Reviewed by Timothy Hatcher.

CSSStyleDetailsSidebarPanel `visible` is true while the panel is being
removed from the details sidebar, even after calling `hidden()`. This
causes it to refresh its current StyleDetailsPanel with a null DOM node.

Unfortunately, SidebarPanel.visible isn't toggled by calling shown/hidden.
Since SidebarPanel.visible is only true if the panel is selected, we should
deselect panels before removing them.

* UserInterface/Views/Sidebar.js:
(WebInspector.Sidebar.prototype.removeSidebarPanel):
Deselect the panel being removed before calling visibiltyDidChange.

* UserInterface/Views/SidebarPanel.js:
(WebInspector.SidebarPanel.prototype.toggle): Deleted.
(WebInspector.SidebarPanel.prototype.willRemove): Deleted.
Drive-by update to remove some unused methods.

Modified Paths

Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (201242 => 201243)


--- trunk/Source/WebInspectorUI/ChangeLog	2016-05-21 17:10:39 UTC (rev 201242)
+++ trunk/Source/WebInspectorUI/ChangeLog	2016-05-21 18:42:21 UTC (rev 201243)
@@ -1,3 +1,28 @@
+2016-05-21  Matt Baker  <[email protected]>
+
+        Assertion Failed: StyleDetailsPanel.markAsNeedsRefresh() called with null domNode
+        https://bugs.webkit.org/show_bug.cgi?id=157955
+        <rdar://problem/26398943>
+
+        Reviewed by Timothy Hatcher.
+
+        CSSStyleDetailsSidebarPanel `visible` is true while the panel is being
+        removed from the details sidebar, even after calling `hidden()`. This
+        causes it to refresh its current StyleDetailsPanel with a null DOM node.
+
+        Unfortunately, SidebarPanel.visible isn't toggled by calling shown/hidden.
+        Since SidebarPanel.visible is only true if the panel is selected, we should
+        deselect panels before removing them.
+
+        * UserInterface/Views/Sidebar.js:
+        (WebInspector.Sidebar.prototype.removeSidebarPanel):
+        Deselect the panel being removed before calling visibiltyDidChange.
+
+        * UserInterface/Views/SidebarPanel.js:
+        (WebInspector.SidebarPanel.prototype.toggle): Deleted.
+        (WebInspector.SidebarPanel.prototype.willRemove): Deleted.
+        Drive-by update to remove some unused methods.
+
 2016-05-20  Joseph Pecoraro  <[email protected]>
 
         REGRESSION(r200740): Web Inspector: TimelineRecordBar class lists not properly cleared, bleeding colors when zooming in and out

Modified: trunk/Source/WebInspectorUI/UserInterface/Views/Sidebar.js (201242 => 201243)


--- trunk/Source/WebInspectorUI/UserInterface/Views/Sidebar.js	2016-05-21 17:10:39 UTC (rev 201242)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/Sidebar.js	2016-05-21 18:42:21 UTC (rev 201243)
@@ -89,7 +89,7 @@
         if (!sidebarPanel)
             return null;
 
-        sidebarPanel.willRemove();
+        sidebarPanel.selected = false;
 
         if (sidebarPanel.visible) {
             sidebarPanel.hidden();

Modified: trunk/Source/WebInspectorUI/UserInterface/Views/SidebarPanel.js (201242 => 201243)


--- trunk/Source/WebInspectorUI/UserInterface/Views/SidebarPanel.js	2016-05-21 17:10:39 UTC (rev 201242)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/SidebarPanel.js	2016-05-21 18:42:21 UTC (rev 201243)
@@ -111,14 +111,6 @@
         this.parentSidebar.selectedSidebarPanel = null;
     }
 
-    toggle()
-    {
-        if (this.visible)
-            this.hide();
-        else
-            this.show();
-    }
-
     added()
     {
         console.assert(this.parentSidebar);
@@ -133,11 +125,6 @@
         // Implemented by subclasses.
     }
 
-    willRemove()
-    {
-        // Implemented by subclasses.
-    }
-
     shown()
     {
         this._contentView.element.scrollTop = this._savedScrollPosition;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to