[Webkit-unassigned] [Bug 170784] animation-play-state does not work when -webkit-overflow-scrolling is set to "touch"

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu May 17 08:04:29 PDT 2018


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

--- Comment #4 from Frédéric Wang (:fredw) <fred.wang at free.fr> ---
I debugged this a bit today. Pausing seems to behave normally for WebCore's animation-related objects but then the code arrives in GraphicsLayerCA::pauseCAAnimationOnLayer where the running animation is replace with a zero-speed copy:

    // Animations on the layer are immutable, so we have to clone and modify.   
    RefPtr<PlatformCAAnimation> newAnim = curAnim->copy();

    newAnim->setSpeed(0);
    newAnim->setTimeOffset(timeOffset.seconds());

    layer->addAnimationForKey(animationID, *newAnim); // This will replace the running animation.                                                              

Here for macOS vs iOS we have "Cocoa" vs "Remote" layer-related objects, which I guess behave differently. I have not tried to debug more for now but removing the animation key before adding the zero-speed copy does stop the animation  (but unfortunately seems to remove the current transform). So I guess it's an issue in how "Remote" objects handle this.

I also wonder what is this bug7311367Workaround function in GraphicsLayerCA  and whether it is relevant here?

-- 
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/20180517/294b2f29/attachment.html>


More information about the webkit-unassigned mailing list