Bug 247245

Summary: Animation.commitStyles() doesn't change "style" attribute for individual CSS transform properties
Product: WebKit Reporter: Andrew Shcherbyna <octrace>
Component: AnimationsAssignee: Antoine Quint <graouts>
Status: RESOLVED FIXED    
Severity: Normal CC: dino, graouts, graouts, koivisto, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Safari 16   
Hardware: Mac (Intel)   
OS: macOS 13   
See Also: https://github.com/web-platform-tests/wpt/pull/36986
Attachments:
Description Flags
Test none

Andrew Shcherbyna
Reported 2022-10-30 11:19:49 PDT
Visit this sandbox in Safari: https://codesandbox.io/s/commitstyles-of-individual-transforms-kk8fdy Click 'Animate' button and wait for the animation to finish. After the animation is complete, the element's style attribute is set to an empty string, instead of 'translate: 200px'.
Attachments
Test (428 bytes, text/html)
2022-11-15 11:37 PST, Antoine Quint
no flags
Radar WebKit Bug Importer
Comment 1 2022-11-06 10:20:21 PST
Antoine Quint
Comment 2 2022-11-15 11:37:18 PST
Created attachment 463538 [details] Test Attaching a single-file version of the codesandbox example.
Antoine Quint
Comment 3 2022-11-15 11:50:43 PST
The issue is in `static Ref<CSSValue> computedTranslate(RenderObject*, const RenderStyle&)` where the `rendererCanBeTransformed(renderer)` check fails because the renderer is null when called under `WebAnimation::commitStyles()`. We should probably mirror `computedTransform()` to only check `is<RenderInline>(renderer)`.
Antoine Quint
Comment 4 2022-11-16 00:44:10 PST
Antoine Quint
Comment 5 2022-11-16 00:45:01 PST
Submitted web-platform-tests pull request: https://github.com/web-platform-tests/wpt/pull/36986
EWS
Comment 6 2022-11-16 02:48:05 PST
Committed 256728@main (c148a252e8ff): <https://commits.webkit.org/256728@main> Reviewed commits have been landed. Closing PR #6542 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.