Title: [223428] trunk
Revision
223428
Author
commit-qu...@webkit.org
Date
2017-10-16 13:25:29 -0700 (Mon, 16 Oct 2017)

Log Message

Web Inspector: Layers tab mistakenly throws out the root element's layer.
https://bugs.webkit.org/show_bug.cgi?id=178222

Patch by Ross Kirsling <ross.kirsl...@sony.com> on 2017-10-16
Reviewed by Brian Burg.

Source/WebInspectorUI:

* UserInterface/Controllers/LayerTreeManager.js:
(WI.LayerTreeManager.prototype.layersForNode):
Fix the issue at the manager level.

* UserInterface/Views/Layers3DContentView.js:
(WI.Layers3DContentView.prototype.layout):
Update new sidebar based on simplified manager API.

* UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
(WI.LayerTreeDetailsSidebarPanel.prototype.layout):
Move overtailored code from manager to legacy sidebar.

LayoutTests:

* inspector/layers/layer-tree-manager-expected.txt: Added.
* inspector/layers/layer-tree-manager.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (223427 => 223428)


--- trunk/LayoutTests/ChangeLog	2017-10-16 20:20:53 UTC (rev 223427)
+++ trunk/LayoutTests/ChangeLog	2017-10-16 20:25:29 UTC (rev 223428)
@@ -1,3 +1,13 @@
+2017-10-16  Ross Kirsling  <ross.kirsl...@sony.com>
+
+        Web Inspector: Layers tab mistakenly throws out the root element's layer.
+        https://bugs.webkit.org/show_bug.cgi?id=178222
+
+        Reviewed by Brian Burg.
+
+        * inspector/layers/layer-tree-manager-expected.txt: Added.
+        * inspector/layers/layer-tree-manager.html: Added.
+
 2017-10-16  Tim Horton  <timothy_hor...@apple.com>
 
         Adjust one more test from constant() to env() after r177581

Added: trunk/LayoutTests/inspector/layers/layer-tree-manager-expected.txt (0 => 223428)


--- trunk/LayoutTests/inspector/layers/layer-tree-manager-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/inspector/layers/layer-tree-manager-expected.txt	2017-10-16 20:25:29 UTC (rev 223428)
@@ -0,0 +1,8 @@
+Tests for LayerTreeManager.
+
+
+== Running test suite: LayerTreeManager
+-- Running test case: LayerTreeManager.layersForNode.root
+PASS: Returned array should include all layers.
+PASS: Array elements should be Layer instances.
+

Added: trunk/LayoutTests/inspector/layers/layer-tree-manager.html (0 => 223428)


--- trunk/LayoutTests/inspector/layers/layer-tree-manager.html	                        (rev 0)
+++ trunk/LayoutTests/inspector/layers/layer-tree-manager.html	2017-10-16 20:25:29 UTC (rev 223428)
@@ -0,0 +1,65 @@
+<!doctype html>
+<html>
+<head>
+<script src=""
+<script>
+function test()
+{
+    let suite = InspectorTest.createAsyncSuite("LayerTreeManager");
+
+    suite.addTestCase({
+        name: "LayerTreeManager.layersForNode.root",
+        description: "Calling the LayerTreeManager#layersForNode method with the root node should the full layer list.",
+        test(resolve, reject) {
+            WI.domTreeManager.requestDocument((node) => {
+                WI.layerTreeManager.layersForNode(node, (layers) => {
+                    InspectorTest.expectEqual(layers.length, 5, "Returned array should include all layers.");
+                    InspectorTest.expectThat(layers.every((layer) => layer instanceof WI.Layer), "Array elements should be Layer instances.");
+                    resolve();
+                });
+            });
+        }
+    });
+
+    suite.runTestCasesAndFinish();
+}
+</script>
+<style>
+div {
+    position: absolute;
+    top: 0;
+    left: 0;
+}
+
+.regular {
+    width: 100px;
+    height: 100px;
+    background-color: black;
+}
+
+.composited {
+    top: 25px;
+    left: 25px;
+    width: 50px;
+    height: 50px;
+    background-color: blue;
+    -webkit-transform: translateZ(0);
+}
+
+.offset {
+    left: 200px;
+    -webkit-transform: translateZ(0);
+}
+</style>
+</head>
+<body _onload_="runTest()">
+<p>Tests for LayerTreeManager.</p>
+<div class="regular"></div>
+<div class="composited">
+    <div class="composited"></div>
+</div>
+<div class="regular offset">
+    <div class="composited"></div>
+</div>
+</body>
+</html>

Modified: trunk/Source/WebInspectorUI/ChangeLog (223427 => 223428)


--- trunk/Source/WebInspectorUI/ChangeLog	2017-10-16 20:20:53 UTC (rev 223427)
+++ trunk/Source/WebInspectorUI/ChangeLog	2017-10-16 20:25:29 UTC (rev 223428)
@@ -1,3 +1,22 @@
+2017-10-16  Ross Kirsling  <ross.kirsl...@sony.com>
+
+        Web Inspector: Layers tab mistakenly throws out the root element's layer.
+        https://bugs.webkit.org/show_bug.cgi?id=178222
+
+        Reviewed by Brian Burg.
+
+        * UserInterface/Controllers/LayerTreeManager.js:
+        (WI.LayerTreeManager.prototype.layersForNode):
+        Fix the issue at the manager level.
+
+        * UserInterface/Views/Layers3DContentView.js:
+        (WI.Layers3DContentView.prototype.layout):
+        Update new sidebar based on simplified manager API.
+
+        * UserInterface/Views/LayerTreeDetailsSidebarPanel.js:
+        (WI.LayerTreeDetailsSidebarPanel.prototype.layout):
+        Move overtailored code from manager to legacy sidebar.
+
 2017-10-15  Nikita Vasilyev  <nvasil...@apple.com>
 
         Web Inspector: Modify CSS number values with up key and down key

Modified: trunk/Source/WebInspectorUI/UserInterface/Controllers/LayerTreeManager.js (223427 => 223428)


--- trunk/Source/WebInspectorUI/UserInterface/Controllers/LayerTreeManager.js	2017-10-16 20:20:53 UTC (rev 223427)
+++ trunk/Source/WebInspectorUI/UserInterface/Controllers/LayerTreeManager.js	2017-10-16 20:25:29 UTC (rev 223428)
@@ -122,17 +122,8 @@
     {
         console.assert(this.supported);
 
-        LayerTreeAgent.layersForNode(node.id, function(error, layers) {
-            if (error || isEmptyObject(layers)) {
-                callback(null, []);
-                return;
-            }
-
-            layers = layers.map(WI.Layer.fromPayload);
-
-            var firstLayer = layers[0];
-            var layerForNode = firstLayer.nodeId === node.id && !firstLayer.isGeneratedContent ? layers.shift() : null;
-            callback(layerForNode, layers);
+        LayerTreeAgent.layersForNode(node.id, (error, layers) => {
+            callback(error ? [] : layers.map(WI.Layer.fromPayload));
         });
     }
 

Modified: trunk/Source/WebInspectorUI/UserInterface/Test/Test.js (223427 => 223428)


--- trunk/Source/WebInspectorUI/UserInterface/Test/Test.js	2017-10-16 20:20:53 UTC (rev 223427)
+++ trunk/Source/WebInspectorUI/UserInterface/Test/Test.js	2017-10-16 20:25:29 UTC (rev 223428)
@@ -39,6 +39,7 @@
     InspectorBackend.registerScriptProfilerDispatcher(new WI.ScriptProfilerObserver);
     InspectorBackend.registerTimelineDispatcher(new WI.TimelineObserver);
     InspectorBackend.registerCSSDispatcher(new WI.CSSObserver);
+    InspectorBackend.registerLayerTreeDispatcher(new WI.LayerTreeObserver);
     InspectorBackend.registerRuntimeDispatcher(new WI.RuntimeObserver);
     InspectorBackend.registerWorkerDispatcher(new WI.WorkerObserver);
     InspectorBackend.registerCanvasDispatcher(new WI.CanvasObserver);
@@ -58,6 +59,7 @@
     this.memoryManager = new WI.MemoryManager;
     this.timelineManager = new WI.TimelineManager;
     this.debuggerManager = new WI.DebuggerManager;
+    this.layerTreeManager = new WI.LayerTreeManager;
     this.probeManager = new WI.ProbeManager;
     this.workerManager = new WI.WorkerManager;
     this.domDebuggerManager = new WI.DOMDebuggerManager;

Modified: trunk/Source/WebInspectorUI/UserInterface/Test.html (223427 => 223428)


--- trunk/Source/WebInspectorUI/UserInterface/Test.html	2017-10-16 20:20:53 UTC (rev 223427)
+++ trunk/Source/WebInspectorUI/UserInterface/Test.html	2017-10-16 20:25:29 UTC (rev 223428)
@@ -80,6 +80,7 @@
     <script src=""
     <script src=""
     <script src=""
+    <script src=""
     <script src=""
     <script src=""
     <script src=""
@@ -137,6 +138,7 @@
     <script src=""
     <script src=""
     <script src=""
+    <script src=""
     <script src=""
     <script src=""
     <script src=""
@@ -202,6 +204,7 @@
     <script src=""
     <script src=""
     <script src=""
+    <script src=""
     <script src=""
     <script src=""
     <script src=""

Modified: trunk/Source/WebInspectorUI/UserInterface/Views/LayerTreeDetailsSidebarPanel.js (223427 => 223428)


--- trunk/Source/WebInspectorUI/UserInterface/Views/LayerTreeDetailsSidebarPanel.js	2017-10-16 20:20:53 UTC (rev 223427)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/LayerTreeDetailsSidebarPanel.js	2017-10-16 20:25:29 UTC (rev 223428)
@@ -79,7 +79,9 @@
         if (!this.domNode)
             return;
 
-        WI.layerTreeManager.layersForNode(this.domNode, (layerForNode, childLayers) => {
+        WI.layerTreeManager.layersForNode(this.domNode, (layers) => {
+            let layerForNode = layers[0] && layers[0].nodeId === this.domNode.id && !layers[0].isGeneratedContent ? layers[0] : null;
+            let childLayers = layers.slice(layerForNode ? 1 : 0);
             this._unfilteredChildLayers = childLayers;
             this._updateDisplayWithLayers(layerForNode, childLayers);
         });

Modified: trunk/Source/WebInspectorUI/UserInterface/Views/Layers3DContentView.js (223427 => 223428)


--- trunk/Source/WebInspectorUI/UserInterface/Views/Layers3DContentView.js	2017-10-16 20:20:53 UTC (rev 223427)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/Layers3DContentView.js	2017-10-16 20:25:29 UTC (rev 223428)
@@ -127,8 +127,8 @@
             return;
 
         WI.domTreeManager.requestDocument((node) => {
-            WI.layerTreeManager.layersForNode(node, (layerForNode, childLayers) => {
-                this._updateLayers(childLayers);
+            WI.layerTreeManager.layersForNode(node, (layers) => {
+                this._updateLayers(layers);
                 this.dispatchEventToListeners(WI.ContentView.Event.SelectionPathComponentsDidChange);
             });
         });
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to