| Summary: | Using `rotate: x` and `transform: rotate(x)` yields different behavior with SVG | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Cory LaViska <cory> |
| Component: | Animations | Assignee: | Antoine Quint <graouts> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | ahmad.saleem792, dino, graouts, graouts, karlcow, sabouhallawa, simon.fraser, webkit-bug-importer |
| Priority: | P2 | Keywords: | BrowserCompat, InRadar |
| Version: | Safari 16 | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| See Also: | https://github.com/web-platform-tests/wpt/pull/37933 | ||
| Bug Depends on: | |||
| Bug Blocks: | 250901 | ||
|
Description
Cory LaViska
2023-01-10 07:37:06 PST
I am able to reproduce this bug in Safari 16.2 and Safari Technology Preview 160 using CodePen from Comment 0, while Chrome Canary 111 & Firefox Nightly 110 match each other and does not exhibit same error as Safari. This seems to be specific to animation, static use of `rotate` and `transform: rotate()` yield similar results. We fail to create a CSSAnimation for the "rotate" case while we do for the "transform" case. We must maintain a list somewhere of properties that are eligible for animation on SVG elements. Actually, this was user error :) The problem is that when we get to LegacyRenderSVGShape::layout(), m_needsTransformUpdate is false. We most likely need to make LegacyRenderSVGModelObject::styleDidChange() aware of individual transform properties. Pull request: https://github.com/WebKit/WebKit/pull/8620 Submitted web-platform-tests pull request: https://github.com/web-platform-tests/wpt/pull/37933 Committed 258882@main (540afd688321): <https://commits.webkit.org/258882@main> Reviewed commits have been landed. Closing PR #8620 and removing active labels. |