Title: [140233] trunk
Revision
140233
Author
[email protected]
Date
2013-01-18 20:43:34 -0800 (Fri, 18 Jan 2013)

Log Message

Fix bug that caused pages with fixed backgrounds to not be fast scrollable
https://bugs.webkit.org/show_bug.cgi?id=107354

Reviewed by Sam Weinig.

Source/WebCore:

Correct the change to RenderObject::styleWillChange() made in r140223. This
condition is checking that we're painting the root background, so it checks if
the renderer is the root, or if it's the body, and the document element's renderer
has no background (which means that the body's background propagates to the root).

* rendering/RenderObject.cpp:
(WebCore::RenderObject::styleWillChange):

LayoutTests:

* platform/mac/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.txt:
* platform/mac/tiled-drawing/fixed-background/fixed-body-background-expected.txt:
* platform/mac/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.txt:
* platform/mac/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.txt:
* platform/mac/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.txt:
* platform/mac/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt:
* platform/mac/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.txt:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (140232 => 140233)


--- trunk/LayoutTests/ChangeLog	2013-01-19 04:37:54 UTC (rev 140232)
+++ trunk/LayoutTests/ChangeLog	2013-01-19 04:43:34 UTC (rev 140233)
@@ -1,3 +1,18 @@
+2013-01-18  Simon Fraser  <[email protected]>
+
+        Fix bug that caused pages with fixed backgrounds to not be fast scrollable
+        https://bugs.webkit.org/show_bug.cgi?id=107354
+
+        Reviewed by Sam Weinig.
+
+        * platform/mac/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.txt:
+        * platform/mac/tiled-drawing/fixed-background/fixed-body-background-expected.txt:
+        * platform/mac/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.txt:
+        * platform/mac/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.txt:
+        * platform/mac/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.txt:
+        * platform/mac/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt:
+        * platform/mac/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.txt:
+
 2013-01-18  Beth Dakin  <[email protected]>
 
         https://bugs.webkit.org/show_bug.cgi?id=106946

Modified: trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.txt (140232 => 140233)


--- trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.txt	2013-01-19 04:37:54 UTC (rev 140232)
+++ trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-body-layer-expected.txt	2013-01-19 04:43:34 UTC (rev 140233)
@@ -14,9 +14,9 @@
         (GraphicsLayer
           (bounds 785.00 1600.00)
           (drawsContent 1)
-          (tile cache coverage 0, 0 785 x 1200)
-          (tile size 785 x 600)
-          (top left tile 0, 0 tiles grid 1 x 2)
+          (tile cache coverage 0, 0 785 x 1600)
+          (tile size 512 x 512)
+          (top left tile 0, 0 tiles grid 2 x 4)
           (children 1
             (GraphicsLayer
             )

Modified: trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-expected.txt (140232 => 140233)


--- trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-expected.txt	2013-01-19 04:37:54 UTC (rev 140232)
+++ trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-expected.txt	2013-01-19 04:43:34 UTC (rev 140233)
@@ -14,9 +14,9 @@
         (GraphicsLayer
           (bounds 785.00 1700.00)
           (drawsContent 1)
-          (tile cache coverage 0, 0 785 x 1200)
-          (tile size 785 x 600)
-          (top left tile 0, 0 tiles grid 1 x 2)
+          (tile cache coverage 0, 0 785 x 1700)
+          (tile size 512 x 512)
+          (top left tile 0, 0 tiles grid 2 x 4)
           (children 1
             (GraphicsLayer
             )

Modified: trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.txt (140232 => 140233)


--- trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.txt	2013-01-19 04:37:54 UTC (rev 140232)
+++ trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-opacity-html-expected.txt	2013-01-19 04:43:34 UTC (rev 140233)
@@ -14,9 +14,9 @@
         (GraphicsLayer
           (bounds 785.00 1700.00)
           (drawsContent 1)
-          (tile cache coverage 0, 0 785 x 1200)
-          (tile size 785 x 600)
-          (top left tile 0, 0 tiles grid 1 x 2)
+          (tile cache coverage 0, 0 785 x 1700)
+          (tile size 512 x 512)
+          (top left tile 0, 0 tiles grid 2 x 4)
           (children 1
             (GraphicsLayer
             )

Modified: trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.txt (140232 => 140233)


--- trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.txt	2013-01-19 04:37:54 UTC (rev 140232)
+++ trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-positioned-expected.txt	2013-01-19 04:43:34 UTC (rev 140233)
@@ -14,9 +14,9 @@
         (GraphicsLayer
           (bounds 785.00 3700.00)
           (drawsContent 1)
-          (tile cache coverage 0, 0 785 x 1200)
-          (tile size 785 x 600)
-          (top left tile 0, 0 tiles grid 1 x 2)
+          (tile cache coverage 0, 0 785 x 2048)
+          (tile size 512 x 512)
+          (top left tile 0, 0 tiles grid 2 x 4)
           (children 1
             (GraphicsLayer
             )

Modified: trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.txt (140232 => 140233)


--- trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.txt	2013-01-19 04:37:54 UTC (rev 140232)
+++ trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-transformed-html-expected.txt	2013-01-19 04:43:34 UTC (rev 140233)
@@ -14,9 +14,9 @@
         (GraphicsLayer
           (bounds 795.00 1710.00)
           (drawsContent 1)
-          (tile cache coverage 0, 0 785 x 1170)
-          (tile size 785 x 585)
-          (top left tile 0, 0 tiles grid 1 x 2)
+          (tile cache coverage 0, 0 795 x 1710)
+          (tile size 512 x 512)
+          (top left tile 0, 0 tiles grid 2 x 4)
           (children 1
             (GraphicsLayer
             )

Modified: trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt (140232 => 140233)


--- trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt	2013-01-19 04:37:54 UTC (rev 140232)
+++ trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-body-background-zoomed-expected.txt	2013-01-19 04:43:34 UTC (rev 140233)
@@ -16,9 +16,9 @@
         (GraphicsLayer
           (bounds 785.00 1700.00)
           (drawsContent 1)
-          (tile cache coverage 0, 110 446 x 443)
-          (tile size 342 x 255)
-          (top left tile 0, 1 tiles grid 3 x 4)
+          (tile cache coverage 0, 0 784 x 890)
+          (tile size 512 x 512)
+          (top left tile 0, 0 tiles grid 4 x 4)
           (children 1
             (GraphicsLayer
             )

Modified: trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.txt (140232 => 140233)


--- trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.txt	2013-01-19 04:37:54 UTC (rev 140232)
+++ trunk/LayoutTests/platform/mac/tiled-drawing/fixed-background/fixed-non-propagated-body-background-expected.txt	2013-01-19 04:43:34 UTC (rev 140233)
@@ -5,9 +5,9 @@
       (bounds 785.00 1700.00)
       (drawsContent 1)
       (backgroundColor #C0C0C0)
-      (tile cache coverage 0, 0 785 x 1700)
-      (tile size 512 x 512)
-      (top left tile 0, 0 tiles grid 2 x 4)
+      (tile cache coverage 0, 0 785 x 1200)
+      (tile size 785 x 600)
+      (top left tile 0, 0 tiles grid 1 x 2)
       (children 1
         (GraphicsLayer
         )

Modified: trunk/Source/WebCore/ChangeLog (140232 => 140233)


--- trunk/Source/WebCore/ChangeLog	2013-01-19 04:37:54 UTC (rev 140232)
+++ trunk/Source/WebCore/ChangeLog	2013-01-19 04:43:34 UTC (rev 140233)
@@ -1,3 +1,18 @@
+2013-01-18  Simon Fraser  <[email protected]>
+
+        Fix bug that caused pages with fixed backgrounds to not be fast scrollable
+        https://bugs.webkit.org/show_bug.cgi?id=107354
+
+        Reviewed by Sam Weinig.
+
+        Correct the change to RenderObject::styleWillChange() made in r140223. This
+        condition is checking that we're painting the root background, so it checks if
+        the renderer is the root, or if it's the body, and the document element's renderer
+        has no background (which means that the body's background propagates to the root).
+
+        * rendering/RenderObject.cpp:
+        (WebCore::RenderObject::styleWillChange):
+
 2013-01-18  Dima Gorbik  <[email protected]>
 
         Remove a TextTrack.h include from the Element.h and move WebVTT related stuff outside the Element

Modified: trunk/Source/WebCore/rendering/RenderObject.cpp (140232 => 140233)


--- trunk/Source/WebCore/rendering/RenderObject.cpp	2013-01-19 04:37:54 UTC (rev 140232)
+++ trunk/Source/WebCore/rendering/RenderObject.cpp	2013-01-19 04:43:34 UTC (rev 140233)
@@ -1912,7 +1912,7 @@
         bool oldStyleSlowScroll = m_style && !shouldBlitOnFixedBackgroundImage && m_style->hasFixedBackgroundImage();
 
 #if USE(ACCELERATED_COMPOSITING)
-        bool drawsRootBackground = isRoot() || (isBody() && rendererHasBackground(document()->documentElement()->renderer()));
+        bool drawsRootBackground = isRoot() || (isBody() && !rendererHasBackground(document()->documentElement()->renderer()));
         if (drawsRootBackground && !shouldBlitOnFixedBackgroundImage) {
             if (view()->compositor()->supportsFixedRootBackgroundCompositing()) {
                 if (newStyleSlowScroll && newStyle->hasEntirelyFixedBackground())
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to