[Webkit-unassigned] [Bug 123170] Keyframe animations do multiple style recalcs before starting

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Oct 22 17:12:17 PDT 2013


https://bugs.webkit.org/show_bug.cgi?id=123170


Simon Fraser (smfr) <simon.fraser at apple.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #214906|review?                     |review-
               Flag|                            |




--- Comment #3 from Simon Fraser (smfr) <simon.fraser at apple.com>  2013-10-22 17:11:02 PST ---
(From update of attachment 214906)
View in context: https://bugs.webkit.org/attachment.cgi?id=214906&action=review

> Source/WebCore/ChangeLog:16
> +        (WebCore::KeyframeAnimation::animate):
> +        Reorder advancing the state machine and calling AnimationBase::fireAnimationEventsIfNeeded. This allows AnimationBase's state machine to advance past WaitForStyle after the first recalc. This order matches what ImplicitAnimation::animate does for transitions.

If this is a behavior change, you should be able to make a testcase for it.

> Source/WebCore/page/animation/KeyframeAnimation.cpp:69
> +#if USE(ACCELERATED_COMPOSITING)
> +    // Force the compositor to schedule a layer flush here so that it occurs before the
> +    // animation timer, which will be scheduled later (but after the animation has been
> +    // added to the layer in the composited case).
> +    if (m_object && toRenderBoxModelObject(m_object)->layer())
> +        toRenderBoxModelObject(m_object)->layer()->compositor().scheduleLayerFlush(false);
> +#endif

You can't just do this for all animations, and this seems wrong. We'll schedule a layer flush when we push the animations to the GraphicsLayerCA, which probably happens in the same runloop anyway.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list