- Revision
- 156301
- Author
- [email protected]
- Date
- 2013-09-23 15:16:44 -0700 (Mon, 23 Sep 2013)
Log Message
REGRESSION (r155998): when zooming in, tiles are too small
https://bugs.webkit.org/show_bug.cgi?id=121765
Source/WebCore:
Reviewed by Dean Jackson.
In r155998 I made GraphicsLayerCA take root-relative transforms
into account when computing contentsScale, and landed a bunch of
new results which should actually have told me that I broke page
scaling.
We don't want to take page scale into account when computing contentsScale,
because we already do so, so ignore the transform on the layer that
applies page scale (the only transform it should ever has is the page scale).
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::updateRootRelativeScale):
LayoutTests:
Reviewed by Dean Jackson.
Fix results of tests that showed that we had incorrect tiling
behavior on zooming.
* platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt:
* platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt:
* platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-expected.txt:
* platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt:
* platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt:
Modified Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (156300 => 156301)
--- trunk/LayoutTests/ChangeLog 2013-09-23 22:09:24 UTC (rev 156300)
+++ trunk/LayoutTests/ChangeLog 2013-09-23 22:16:44 UTC (rev 156301)
@@ -1,3 +1,19 @@
+2013-09-23 Simon Fraser <[email protected]>
+
+ REGRESSION (r155998): when zooming in, tiles are too small
+ https://bugs.webkit.org/show_bug.cgi?id=121765
+
+ Reviewed by Dean Jackson.
+
+ Fix results of tests that showed that we had incorrect tiling
+ behavior on zooming.
+
+ * platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt:
+ * platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt:
+ * platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-expected.txt:
+ * platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt:
+ * platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt:
+
2013-09-23 Antonio Gomes <[email protected]>
iframe and scrollbar with "overflow:auto" should support autoscroll with mousedrag
Modified: trunk/LayoutTests/platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt (156300 => 156301)
--- trunk/LayoutTests/platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt 2013-09-23 22:09:24 UTC (rev 156300)
+++ trunk/LayoutTests/platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt 2013-09-23 22:16:44 UTC (rev 156301)
@@ -9,7 +9,7 @@
(contentsOpaque 1)
(transform [1.60 0.00 0.00 0.00] [0.00 1.60 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 0.00 0.00 1.00])
(visible rect 0.00, 0.00 490.63 x 365.63)
- (contentsScale 2.56)
+ (contentsScale 1.60)
(children 1
(GraphicsLayer
(position 8.00 8.00)
@@ -17,7 +17,7 @@
(contentsOpaque 1)
(transform [1.00 0.00 0.00 0.00] [0.00 1.00 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 0.00 1.00 1.00])
(visible rect 0.00, 0.00 482.63 x 357.63)
- (contentsScale 2.56)
+ (contentsScale 1.60)
)
)
)
Modified: trunk/LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt (156300 => 156301)
--- trunk/LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt 2013-09-23 22:09:24 UTC (rev 156300)
+++ trunk/LayoutTests/platform/mac-wk2/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt 2013-09-23 22:16:44 UTC (rev 156301)
@@ -17,9 +17,9 @@
(GraphicsLayer
(bounds 785.00 1700.00)
(drawsContent 1)
- (tile cache coverage 0, 193 387 x 290)
+ (tile cache coverage 0, 0 445 x 667)
(tile size 512 x 512)
- (top left tile 0, 2 tiles grid 4 x 3)
+ (top left tile 0, 0 tiles grid 2 x 3)
(children 1
(GraphicsLayer
)
Modified: trunk/LayoutTests/platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt (156300 => 156301)
--- trunk/LayoutTests/platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt 2013-09-23 22:09:24 UTC (rev 156300)
+++ trunk/LayoutTests/platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt 2013-09-23 22:16:44 UTC (rev 156301)
@@ -13,12 +13,12 @@
(visible rect 0.00, 0.00 461.76 x 344.12)
(contentsScale 1.00)
(tile cache coverage 0, 0 461 x 344)
- (tile size 1335 x 995)
+ (tile size 785 x 585)
(top left tile 0, 0 tiles grid 1 x 1)
(children 1
(GraphicsLayer
(visible rect 0.00, 0.00 0.00 x 0.00)
- (contentsScale 2.89)
+ (contentsScale 1.70)
)
)
)
Modified: trunk/LayoutTests/platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-expected.txt (156300 => 156301)
--- trunk/LayoutTests/platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-expected.txt 2013-09-23 22:09:24 UTC (rev 156300)
+++ trunk/LayoutTests/platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-expected.txt 2013-09-23 22:16:44 UTC (rev 156301)
@@ -12,13 +12,13 @@
(transform [2.30 0.00 0.00 0.00] [0.00 2.30 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 0.00 0.00 1.00])
(visible rect 0.00, 0.00 341.30 x 254.35)
(contentsScale 1.00)
- (tile cache coverage 0, 0 387 x 290)
+ (tile cache coverage 0, 0 445 x 445)
(tile size 512 x 512)
- (top left tile 0, 0 tiles grid 4 x 3)
+ (top left tile 0, 0 tiles grid 2 x 2)
(children 1
(GraphicsLayer
(visible rect 0.00, 0.00 0.00 x 0.00)
- (contentsScale 5.29)
+ (contentsScale 2.30)
)
)
)
Modified: trunk/LayoutTests/platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt (156300 => 156301)
--- trunk/LayoutTests/platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt 2013-09-23 22:09:24 UTC (rev 156300)
+++ trunk/LayoutTests/platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt 2013-09-23 22:16:44 UTC (rev 156301)
@@ -12,13 +12,13 @@
(transform [2.30 0.00 0.00 0.00] [0.00 2.30 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 0.00 0.00 1.00])
(visible rect 800.00, 1000.00 341.30 x 254.35)
(contentsScale 1.00)
- (tile cache coverage 774, 967 387 x 290)
+ (tile cache coverage 667, 890 540 x 445)
(tile size 512 x 512)
- (top left tile 8, 10 tiles grid 4 x 3)
+ (top left tile 3, 4 tiles grid 3 x 2)
(children 1
(GraphicsLayer
(visible rect 0.00, 0.00 0.00 x 0.00)
- (contentsScale 5.29)
+ (contentsScale 2.30)
)
)
)
Modified: trunk/Source/WebCore/ChangeLog (156300 => 156301)
--- trunk/Source/WebCore/ChangeLog 2013-09-23 22:09:24 UTC (rev 156300)
+++ trunk/Source/WebCore/ChangeLog 2013-09-23 22:16:44 UTC (rev 156301)
@@ -1,3 +1,22 @@
+2013-09-23 Simon Fraser <[email protected]>
+
+ REGRESSION (r155998): when zooming in, tiles are too small
+ https://bugs.webkit.org/show_bug.cgi?id=121765
+
+ Reviewed by Dean Jackson.
+
+ In r155998 I made GraphicsLayerCA take root-relative transforms
+ into account when computing contentsScale, and landed a bunch of
+ new results which should actually have told me that I broke page
+ scaling.
+
+ We don't want to take page scale into account when computing contentsScale,
+ because we already do so, so ignore the transform on the layer that
+ applies page scale (the only transform it should ever has is the page scale).
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::updateRootRelativeScale):
+
2013-09-23 Antonio Gomes <[email protected]>
iframe and scrollbar with "overflow:auto" should support autoscroll with mousedrag
Modified: trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp (156300 => 156301)
--- trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp 2013-09-23 22:09:24 UTC (rev 156300)
+++ trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp 2013-09-23 22:16:44 UTC (rev 156301)
@@ -1064,7 +1064,7 @@
bool haveTransformAnimation = getTransformFromAnimationsWithMaxScaleImpact(*transformFromRoot, maxScaleImpactTransform, rootRelativeScaleFactor);
if (haveTransformAnimation)
transformFromRoot->multiply(maxScaleImpactTransform);
- else {
+ else if (!appliesPageScale()) {
TransformationMatrix unanimatedTransform = this->layerTransform(m_position);
transformFromRoot->multiply(unanimatedTransform);
rootRelativeScaleFactor = maxScaleFromTransform(*transformFromRoot);