Bug 99529 - GraphicsLayer visible rect computation needs to use the current animating transform
Summary: GraphicsLayer visible rect computation needs to use the current 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: Simon Fraser (smfr)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-10-16 18:04 PDT by Simon Fraser (smfr)
Modified: 2012-10-17 11:40 PDT (History)
10 users (show)

See Also:


Attachments
Patch (12.44 KB, patch)
2012-10-16 18:08 PDT, Simon Fraser (smfr)
dino: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Fraser (smfr) 2012-10-16 18:04:58 PDT
GraphicsLayer visible rect computation needs to use the current animating transform
Comment 1 Simon Fraser (smfr) 2012-10-16 18:08:16 PDT
Created attachment 169067 [details]
Patch
Comment 2 Dean Jackson 2012-10-17 10:59:07 PDT
Comment on attachment 169067 [details]
Patch

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

> Source/WebCore/platform/graphics/GraphicsLayerClient.h:75
> +    virtual void currentTransform(const GraphicsLayer*, TransformationMatrix&) const { }

It's a bit strange that this method is called currentTransform like the existing method on RenderLayer, but modifies its parameter rather than providing a return value.

> Source/WebCore/rendering/RenderLayer.h:598
> -    TransformationMatrix currentTransform() const;
> +    TransformationMatrix currentTransform(RenderStyle::ApplyTransformOrigin = RenderStyle::IncludeTransformOrigin) const;

This is the existing one (in another class)

> Source/WebCore/rendering/RenderLayerBacking.h:151
> +    virtual void currentTransform(const GraphicsLayer*, TransformationMatrix&) const;

This is the new one.

> LayoutTests/compositing/visible-rect/animated.html:26
> +        @-webkit-keyframes move {
> +            from { -webkit-transform: translateX(-100px); }
> +            to   { -webkit-transform: translateX(300px); }
> +        }

I'm not sure how this test is exercising the new code. You don't have anything here that setting transform origin.
Comment 3 Simon Fraser (smfr) 2012-10-17 11:21:11 PDT
http://trac.webkit.org/changeset/131626