Title: [193508] trunk/Source/WebInspectorUI
Revision
193508
Author
[email protected]
Date
2015-12-04 19:29:36 -0800 (Fri, 04 Dec 2015)

Log Message

Unreviewed, rolling out r193486.
https://bugs.webkit.org/show_bug.cgi?id=151904

Causes Infinite Recursion in Timeline Recording (Requested by
JoePeck on #webkit).

Reverted changeset:

"Web Inspector: when a marked-dirty subview is attached to a
parent View, dirtyDescendantsCount gets out of sync"
https://bugs.webkit.org/show_bug.cgi?id=151876
http://trac.webkit.org/changeset/193486

Modified Paths

Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (193507 => 193508)


--- trunk/Source/WebInspectorUI/ChangeLog	2015-12-05 03:20:38 UTC (rev 193507)
+++ trunk/Source/WebInspectorUI/ChangeLog	2015-12-05 03:29:36 UTC (rev 193508)
@@ -1,3 +1,18 @@
+2015-12-04  Commit Queue  <[email protected]>
+
+        Unreviewed, rolling out r193486.
+        https://bugs.webkit.org/show_bug.cgi?id=151904
+
+        Causes Infinite Recursion in Timeline Recording (Requested by
+        JoePeck on #webkit).
+
+        Reverted changeset:
+
+        "Web Inspector: when a marked-dirty subview is attached to a
+        parent View, dirtyDescendantsCount gets out of sync"
+        https://bugs.webkit.org/show_bug.cgi?id=151876
+        http://trac.webkit.org/changeset/193486
+
 2015-12-04  Joseph Pecoraro  <[email protected]>
 
         Web Inspector: Uncaught Exception with Reload shortcut in JSContext Inspector

Modified: trunk/Source/WebInspectorUI/UserInterface/Views/NewTabContentView.js (193507 => 193508)


--- trunk/Source/WebInspectorUI/UserInterface/Views/NewTabContentView.js	2015-12-05 03:20:38 UTC (rev 193507)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/NewTabContentView.js	2015-12-05 03:29:36 UTC (rev 193508)
@@ -138,6 +138,7 @@
             return;
 
         this._shownTabClasses = allowedTabClasses;
+        this.needsLayout();
     }
 
     _allowableTabTypes()

Modified: trunk/Source/WebInspectorUI/UserInterface/Views/View.js (193507 => 193508)


--- trunk/Source/WebInspectorUI/UserInterface/Views/View.js	2015-12-05 03:20:38 UTC (rev 193507)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/View.js	2015-12-05 03:29:36 UTC (rev 193508)
@@ -182,31 +182,21 @@
 
     static _scheduleLayoutForView(view)
     {
-        let isDescendantOfRoot = false;
-        let parentView = view.parentView;
-        while (parentView) {
-            parentView._dirtyDescendantsCount++;
-            if (parentView === WebInspector.View._rootView) {
-                isDescendantOfRoot = true;
-                break;
-            }
-            parentView = parentView.parentView;
-        }
-
-        // If the view is not attached to the main view tree, switch to a synchronous layout.
-        if (!isDescendantOfRoot) {
-            parentView = view.parentView;
-            while (parentView) {
-                parentView._dirtyDescendantsCount--;
-                parentView = parentView.parentView;
-            }
-
+        // Asynchronous layouts aren't scheduled until the root view has been set.
+        // If the root view hasn't been set, switch to a synchronous layout.
+        if (!WebInspector.View._rootView) {
             view._layoutSubtree();
             return;
         }
 
         view._dirty = true;
 
+        let parentView = view.parentView;
+        while (parentView) {
+            parentView._dirtyDescendantsCount++;
+            parentView = parentView.parentView;
+        }
+
         if (WebInspector.View._scheduledLayoutUpdateIdentifier)
             return;
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to