haikuwebkit/LayoutTests/animations/animation-followed-by-trans...

6 lines
80 B
Plaintext
Raw Permalink Normal View History

Animation followed by transition doesn't always fire transitionend event https://bugs.webkit.org/show_bug.cgi?id=165731 rdar://problem/28471240 Reviewed by Zalan Bujtas. Source/WebCore: After r200047, a keyframe animation of an accelerated property followed by a transition didn't always fire a transitionend event. This happened if CompositeAnimation::timeToNextService() happend to be called when the transitions's timeToNextService() returned a positive value, but the keyframe animation still existed, but its timeToNextService() returned -1. In this case that -1 would clobber the positing minT. Fix by just continuing in each loop when the timeToNextService() returns -1. This code should probably be rewritten to use std::optional<double> rather than magic values. Test: animations/animation-followed-by-transition.html * page/animation/CompositeAnimation.cpp: (WebCore::CompositeAnimation::timeToNextService): * platform/graphics/ca/GraphicsLayerCA.cpp: (WebCore::GraphicsLayerCA::addAnimation): (WebCore::GraphicsLayerCA::pauseAnimation): (WebCore::GraphicsLayerCA::removeAnimation): (WebCore::GraphicsLayerCA::platformCALayerAnimationStarted): (WebCore::GraphicsLayerCA::platformCALayerAnimationEnded): LayoutTests: * animations/animation-followed-by-transition-expected.txt: Added. * animations/animation-followed-by-transition.html: Added. Canonical link: https://commits.webkit.org/183331@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@209675 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2016-12-10 22:29:24 +00:00
Should see animationend followed by transitionend.
animationend
transitionend