Bug 87184 - [chromium] Layers on main thread should get a RenderSurface for animating transform only if masksToBounds is true also
Summary: [chromium] Layers on main thread should get a RenderSurface for animating tra...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Dana Jansens
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-05-22 17:02 PDT by Dana Jansens
Modified: 2012-05-23 11:56 PDT (History)
6 users (show)

See Also:


Attachments
Patch (4.58 KB, patch)
2012-05-22 17:05 PDT, Dana Jansens
no flags Details | Formatted Diff | Diff
Patch for landing (5.05 KB, patch)
2012-05-23 07:49 PDT, Dana Jansens
no flags Details | Formatted Diff | Diff
Archive of layout-test-results from ec2-cq-02 (652.37 KB, application/zip)
2012-05-23 08:54 PDT, WebKit Review Bot
no flags Details
Patch for landing (5.74 KB, patch)
2012-05-23 09:13 PDT, Dana Jansens
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dana Jansens 2012-05-22 17:02:12 PDT
[chromium] Layers on main thread should get a RenderSurface for animating transform only if masksToBounds is true also
Comment 1 Dana Jansens 2012-05-22 17:05:13 PDT
Created attachment 143400 [details]
Patch
Comment 2 James Robinson 2012-05-22 20:49:47 PDT
Comment on attachment 143400 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=143400&action=review

> Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:-227
> -    // On the main thread side, animating transforms are unknown, and may cause a RenderSurface on the impl side.
> -    // Since they are cheap, we create a rendersurface for all animating transforms to cover these cases, and so
> -    // that we can consider descendants as not animating relative to their target to aid culling.

I don't think we have to dump the entire comment.  Having the transformToParentIsKnown() bit explained is useful
Comment 3 Dana Jansens 2012-05-23 07:49:31 PDT
Created attachment 143570 [details]
Patch for landing
Comment 4 Dana Jansens 2012-05-23 07:49:42 PDT
k! comment added.
Comment 5 WebKit Review Bot 2012-05-23 08:54:38 PDT
Comment on attachment 143570 [details]
Patch for landing

Rejecting attachment 143570 [details] from commit-queue.

New failing tests:
CCLayerTreeHostCommonTest.verifyBackFaceCullingWithAnimatingTransforms
Full output: http://queues.webkit.org/results/12774243
Comment 6 WebKit Review Bot 2012-05-23 08:54:42 PDT
Created attachment 143577 [details]
Archive of layout-test-results from ec2-cq-02

The attached test failures were seen while running run-webkit-tests on the commit-queue.
Bot: ec2-cq-02  Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'>  Platform: Linux-2.6.35-28-virtual-x86_64-with-Ubuntu-10.10-maverick
Comment 7 Dana Jansens 2012-05-23 09:13:14 PDT
Oof. Bad interaction with the backface change.

diff --git a/Source/WebKit/chromium/tests/CCLayerTreeHostCommonTest.cpp b/Source/WebKit/chromium/tests/CCLayerTreeHostCommonTest.cpp
index 5c24a2e..31da50c 100644
--- a/Source/WebKit/chromium/tests/CCLayerTreeHostCommonTest.cpp
+++ b/Source/WebKit/chromium/tests/CCLayerTreeHostCommonTest.cpp
@@ -1545,8 +1545,9 @@ TEST(CCLayerTreeHostCommonTest, verifyBackFaceCullingWithAnimatingTransforms)
     backfaceMatrix.rotate3d(0, 1, 0, 180);
     backfaceMatrix.translate(-50, -50);
 
-    // Having a descendant, and animating transforms, will make the animatingSurface own a render surface.
+    // Having a descendant that draws, masksToBounds, and animating transforms, will make the animatingSurface own a render surface.
     addAnimatedTransformToController(*animatingSurface->layerAnimationController(), 10, 30, 0);
+    animatingSurface->setMasksToBounds(true);
     // This is just an animating layer, not a surface.
     addAnimatedTransformToController(*animatingChild->layerAnimationController(), 10, 30, 0);
Comment 8 Dana Jansens 2012-05-23 09:13:49 PDT
Created attachment 143580 [details]
Patch for landing
Comment 9 WebKit Review Bot 2012-05-23 11:56:53 PDT
Comment on attachment 143580 [details]
Patch for landing

Clearing flags on attachment: 143580

Committed r118219: <http://trac.webkit.org/changeset/118219>
Comment 10 WebKit Review Bot 2012-05-23 11:56:58 PDT
All reviewed patches have been landed.  Closing bug.