Bug 87184

Summary: [chromium] Layers on main thread should get a RenderSurface for animating transform only if masksToBounds is true also
Product: WebKit Reporter: Dana Jansens <danakj>
Component: New BugsAssignee: Dana Jansens <danakj>
Status: RESOLVED FIXED    
Severity: Normal CC: cc-bugs, enne, jamesr, piman, webkit.review.bot, wjmaclean
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch for landing
none
Archive of layout-test-results from ec2-cq-02
none
Patch for landing none

Dana Jansens
Reported 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
Attachments
Patch (4.58 KB, patch)
2012-05-22 17:05 PDT, Dana Jansens
no flags
Patch for landing (5.05 KB, patch)
2012-05-23 07:49 PDT, Dana Jansens
no flags
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
Patch for landing (5.74 KB, patch)
2012-05-23 09:13 PDT, Dana Jansens
no flags
Dana Jansens
Comment 1 2012-05-22 17:05:13 PDT
James Robinson
Comment 2 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
Dana Jansens
Comment 3 2012-05-23 07:49:31 PDT
Created attachment 143570 [details] Patch for landing
Dana Jansens
Comment 4 2012-05-23 07:49:42 PDT
k! comment added.
WebKit Review Bot
Comment 5 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
WebKit Review Bot
Comment 6 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
Dana Jansens
Comment 7 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);
Dana Jansens
Comment 8 2012-05-23 09:13:49 PDT
Created attachment 143580 [details] Patch for landing
WebKit Review Bot
Comment 9 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>
WebKit Review Bot
Comment 10 2012-05-23 11:56:58 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.