Title: [166983] trunk/Source/WebCore
Revision
166983
Author
bda...@apple.com
Date
2014-04-08 17:13:43 -0700 (Tue, 08 Apr 2014)

Log Message

https://bugs.webkit.org/show_bug.cgi?id=131408
Scrollbars layers don't dynamically update when device scale factor changes
-and corresponding-
<rdar://problem/16503875>

Reviewed by Tim Horton.

The scrollbar layers are not children of the RenderView's layer, so they were 
completely skipped over by this function before. We need to start this higher up 
the tree in the rootGraphicsLayer(), which will typically return the 
m_overflowControlsHostLayer.
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::deviceOrPageScaleFactorChanged):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (166982 => 166983)


--- trunk/Source/WebCore/ChangeLog	2014-04-09 00:12:11 UTC (rev 166982)
+++ trunk/Source/WebCore/ChangeLog	2014-04-09 00:13:43 UTC (rev 166983)
@@ -1,3 +1,19 @@
+2014-04-08  Beth Dakin  <bda...@apple.com>
+
+        https://bugs.webkit.org/show_bug.cgi?id=131408
+        Scrollbars layers don't dynamically update when device scale factor changes
+        -and corresponding-
+        <rdar://problem/16503875>
+
+        Reviewed by Tim Horton.
+
+        The scrollbar layers are not children of the RenderView's layer, so they were 
+        completely skipped over by this function before. We need to start this higher up 
+        the tree in the rootGraphicsLayer(), which will typically return the 
+        m_overflowControlsHostLayer.
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::RenderLayerCompositor::deviceOrPageScaleFactorChanged):
+
 2014-04-08  Ryosuke Niwa  <rn...@webkit.org>
 
         HTMLConverter::aggregatedAttributesForAncestors should cache intermediate results

Modified: trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp (166982 => 166983)


--- trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp	2014-04-09 00:12:11 UTC (rev 166982)
+++ trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp	2014-04-09 00:13:43 UTC (rev 166983)
@@ -3362,12 +3362,10 @@
 
 void RenderLayerCompositor::deviceOrPageScaleFactorChanged()
 {
-    // Start at the RenderView's layer, since that's where the scale is applied.
-    RenderLayer* viewLayer = m_renderView.layer();
-    if (!viewLayer->isComposited())
-        return;
-
-    if (GraphicsLayer* rootLayer = viewLayer->backing()->childForSuperlayers())
+    // Page scale will only be applied at to the RenderView and sublayers, but the device scale factor
+    // needs to be applied at the level of rootGraphicsLayer().
+    GraphicsLayer* rootLayer = rootGraphicsLayer();
+    if (rootLayer)
         rootLayer->noteDeviceOrPageScaleFactorChangedIncludingDescendants();
 }
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to