Bug 214708

Summary: KeyframeEffect doesn't update after changing timing function
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: AnimationsAssignee: Antoine Quint <graouts>
Status: RESOLVED WORKSFORME    
Severity: Normal CC: dino, graouts, simon.fraser, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Safari Technology Preview   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=214712
Attachments:
Description Flags
test none

Description Simon Fraser (smfr) 2020-07-23 15:51:01 PDT
Created attachment 405088 [details]
test

In the attached test, hover the spinner. This should change the timing function, but the same KeyframeEffect persists, and KeyframeEffect::computeSomeKeyframesUseStepsTimingFunction() is never called.
Comment 1 Simon Fraser (smfr) 2020-07-23 16:02:16 PDT
KeyframeEffect::animationDidChangeTimingProperties() needs to call computeSomeKeyframesUseStepsTimingFunction().
Comment 2 Radar WebKit Bug Importer 2020-07-30 15:51:18 PDT
<rdar://problem/66351796>
Comment 3 Antoine Quint 2020-07-31 04:20:27 PDT
The attached test works fine for me on a ToT build on macOS. When the spinner is not hovered, it progresses very slowly step-by-step while when it's hovered it has a linear animation. I didn't see any obvious difference between its behavior on a ToT build and recent Firefox and Chrome.
Comment 4 Simon Fraser (smfr) 2020-07-31 08:39:27 PDT
https://trac.webkit.org/changeset/264856/webkit fixed this.