Title: [209224] trunk/Source/WebCore
Revision
209224
Author
simon.fra...@apple.com
Date
2016-12-01 17:21:46 -0800 (Thu, 01 Dec 2016)

Log Message

Put an obvious debug border on layers with backdrop filters
https://bugs.webkit.org/show_bug.cgi?id=165291

Reviewed by Tim Horton.

Put a wide magenta border on layers with backdrop filters, to highlight their performance impact.

Change the "contents layer" color (used by WebGL, video etc) to blue.

Make the clipping layer border slightly narrower.

* platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::getDebugBorderInfo):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::setBackdropFilters):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (209223 => 209224)


--- trunk/Source/WebCore/ChangeLog	2016-12-02 01:01:33 UTC (rev 209223)
+++ trunk/Source/WebCore/ChangeLog	2016-12-02 01:21:46 UTC (rev 209224)
@@ -1,3 +1,21 @@
+2016-12-01  Simon Fraser  <simon.fra...@apple.com>
+
+        Put an obvious debug border on layers with backdrop filters
+        https://bugs.webkit.org/show_bug.cgi?id=165291
+
+        Reviewed by Tim Horton.
+
+        Put a wide magenta border on layers with backdrop filters, to highlight their performance impact.
+        
+        Change the "contents layer" color (used by WebGL, video etc) to blue.
+        
+        Make the clipping layer border slightly narrower.
+
+        * platform/graphics/GraphicsLayer.cpp:
+        (WebCore::GraphicsLayer::getDebugBorderInfo):
+        * platform/graphics/ca/GraphicsLayerCA.cpp:
+        (WebCore::GraphicsLayerCA::setBackdropFilters):
+
 2016-12-01  Brian Burg  <bb...@apple.com>
 
         Fix the Windows Release build after r209198

Modified: trunk/Source/WebCore/platform/graphics/GraphicsLayer.cpp (209223 => 209224)


--- trunk/Source/WebCore/platform/graphics/GraphicsLayer.cpp	2016-12-02 01:01:33 UTC (rev 209223)
+++ trunk/Source/WebCore/platform/graphics/GraphicsLayer.cpp	2016-12-02 01:21:46 UTC (rev 209224)
@@ -437,32 +437,37 @@
 
 void GraphicsLayer::getDebugBorderInfo(Color& color, float& width) const
 {
+    width = 2;
+
+    if (needsBackdrop()) {
+        color = Color(255, 0, 255, 128); // has backdrop: magenta
+        width = 12;
+        return;
+    }
+    
     if (drawsContent()) {
         if (m_usingTiledBacking) {
             color = Color(255, 128, 0, 128); // tiled layer: orange
-            width = 2;
             return;
         }
 
         color = Color(0, 128, 32, 128); // normal layer: green
-        width = 2;
         return;
     }
 
     if (usesContentsLayer()) {
-        color = Color(255, 150, 255, 200); // non-painting layer with contents: pink
-        width = 2;
+        color = Color(0, 64, 128, 150); // non-painting layer with contents: blue
+        width = 8;
         return;
     }
     
     if (masksToBounds()) {
         color = Color(128, 255, 255, 48); // masking layer: pale blue
-        width = 20;
+        width = 16;
         return;
     }
 
     color = Color(255, 255, 0, 192); // container: yellow
-    width = 2;
 }
 
 void GraphicsLayer::updateDebugIndicators()

Modified: trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp (209223 => 209224)


--- trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp	2016-12-02 01:01:33 UTC (rev 209223)
+++ trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp	2016-12-02 01:21:46 UTC (rev 209224)
@@ -787,7 +787,7 @@
         clearBackdropFilters();
     }
 
-    noteLayerPropertyChanged(BackdropFiltersChanged);
+    noteLayerPropertyChanged(BackdropFiltersChanged | DebugIndicatorsChanged);
     return canCompositeFilters;
 }
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to