[Webkit-unassigned] [Bug 244017] Tiled layer flicker when an animation ends

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Aug 16 19:55:08 PDT 2022


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

--- Comment #3 from Simon Fraser (smfr) <simon.fraser at apple.com> ---
For accelerated animations, DocumentTimeline::scheduleNextTick() starts a timer to trigger a rendering update for the next time that animations need servicing. However, there’s enough slop here that this timer fires too late:

DocumentTimeline 0x10511c500 scheduleNextTick - scheduleDelay 2.48s to fire at 68704.44432
…
DocumentTimeline 0x10511c500 scheduleAnimationResolution at 68704.55151 (timer fire)
…
Page::updateRendering() at 68704.55159

So this updateRendering() is the one too late to catch the end of the animation.

One option would be to always tick animations on every frame if a tiled layer is being animated (since we run rendering updates then every frame for tile coverage updates). Another would be to have the behavior of software animations match the CA animations, and behave like “fill-forward” until DocumentTimelinesController::updateAnimationsAndSendEvents() removes them. A third option would be to make scheduleNextTick use a slightly shorter delay.

-- 
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/20220817/a091215c/attachment.htm>


More information about the webkit-unassigned mailing list