[Webkit-unassigned] [Bug 206280] New: Do not detect the stopped animations in Nicosia::Animation to avoid flashback
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Jan 15 01:08:26 PST 2020
https://bugs.webkit.org/show_bug.cgi?id=206280
Bug ID: 206280
Summary: Do not detect the stopped animations in
Nicosia::Animation to avoid flashback
Product: WebKit
Version: WebKit Nightly Build
Hardware: PC
OS: Linux
Status: NEW
Severity: Normal
Priority: P2
Component: WebKitGTK
Assignee: webkit-unassigned at lists.webkit.org
Reporter: Tomoki.Imai at sony.com
CC: bugs-noreply at webkitgtk.org
Created attachment 387759
--> https://bugs.webkit.org/attachment.cgi?id=387759&action=review
The video shows what we see on morphing-cubes.html
How to reproduce the flashback:
- Build webkitgtk with MiniBrowser
- Run minibrowser and open https://webkit.org/blog-files/3d-transforms/morphing-cubes.html
- Push "Toggle Shape" button several times. We see flashback when the toggling shape animation stops.
Confirmed revision: r254528
The flashback was caused by using the old layer transform matrix saved when the animation has been started.
The root cause is an inconsistency of animation state in Nicosia::Animation and CoordinatedGraphicsLayer.
For Nicosia::Animation, ThreadedCompositor increases MonitonicTime for animation every frame, and calls Nicosia::Animation::apply.
For CoordinatedGraphicsLayer, CSSAnimationController updates animations list and if the animation has been finished it updates CSS value.
There is a chance to use old layer state while the Nicosia::Animation stopped, but CoordinatedGraphicsLayer still obtains old CSS value and animations.
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20200115/7f301af2/attachment.htm>
More information about the webkit-unassigned
mailing list