[webkit-reviews] review requested: [Bug 81106] [chromium] Tick accelerated animations on the main thread : [Attachment 131961] Patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Mar 14 17:05:43 PDT 2012
vollick at chromium.org has asked for review:
Bug 81106: [chromium] Tick accelerated animations on the main thread
https://bugs.webkit.org/show_bug.cgi?id=81106
Attachment 131961: Patch
https://bugs.webkit.org/attachment.cgi?id=131961&action=review
------- Additional Comments from vollick at chromium.org
This will fix the issue mentioned in 80744 as well as providing more reliable
values for main thread culling code.
Highlights:
- CCLayerAnimationController and CCLayerAnimationControllerImpl have been
merged (so that the controllers can be ticked on the main thread).
- PLEASE NOTE:
o CCLayerAnimationController::purgeFinishedAnimations(..) now creates
animation finished events (which now hold the final, animated value).
o CCLayerAnimationController::pushAnimationUpdatesTo(..) no longer pulls
back any information from the impl thread. In particular, we no longer need to
keep track of which animations finished on the impl thread.
CCActiveAnimation::AnimationSignature was used only for this purpose and has
been removed.
o Although the animations are ticked on both threads, we only send
animation events in response to things that happen on the impl thread. For that
reason, passing in a vector of animation events to
CCLayerAnimationController::animate is now optional (it takes a pointer that is
null when called from the main thread).
- CCLayerImpl and LayerChromium both implement
CCLayerAnimationControllerClient
- thing to note, CCLayerImpl's implementation allows animations to affect
the live opacity and transform, but LayerChromium's modify animatedOpacity and
animatedTransform so animations do _not_ affect a LayerChromium's opacity and
transform (the real values are set when animations complete).
- LayerChromium::setAnimationEvent now sets final values in response to
animation finished events.
- GraphicsLayerChromium does not need to remove animation names from its
name-to-id map, and this functionality has been removed (from here and from
CCLayerAnimationDelegate).
More information about the webkit-reviews
mailing list