RESOLVED CONFIGURATION CHANGED 149617
SVG text transform css animation has no effect
https://bugs.webkit.org/show_bug.cgi?id=149617
Summary SVG text transform css animation has no effect
kari.pihkala
Reported 2015-09-29 00:46:34 PDT
Created attachment 262048 [details] CSS Animation of svg text element transform SVG text element transform can't be animated with CSS Animations. Translate, scale or rotate doesn't work. The attached example has a translate animation for a text and rect element. Only the rect element is animated. Also, the steps timing function for the color animation doesn't apply anymore. If the transform animation is removed, then the color animation works as expected.
Attachments
CSS Animation of svg text element transform (1.09 KB, image/svg+xml)
2015-09-29 00:46 PDT, kari.pihkala
no flags
kari.pihkala
Comment 1 2015-09-29 01:02:46 PDT
Brent Fulgham
Comment 2 2022-07-15 17:12:24 PDT
Oh, this looks so silly in Safari. We must fix it.
Radar WebKit Bug Importer
Comment 3 2022-07-15 17:12:36 PDT
Ahmad Saleem
Comment 4 2022-10-12 11:03:46 PDT
Seems to be changes here: https://github.com/WebKit/WebKit/blob/b1c9ea1fcb1eac9c9a31b4331fecaff051669fe0/Source/WebCore/rendering/svg/RenderSVGInline.cpp#L142 _____ From #if ENABLE(LAYER_BASED_SVG_ENGINE) if (!document().settings().layerBasedSVGEngineEnabled() && diff == StyleDifference::Layout) setNeedsBoundariesUpdate(); #else if (diff == StyleDifference::Layout) setNeedsBoundariesUpdate(); #endif ___ #if ENABLE(LAYER_BASED_SVG_ENGINE) if (!document().settings().layerBasedSVGEngineEnabled() && diff == StyleDifference::Layout) { setNeedsBoundariesUpdate(); if (style()->hasTransform()) setNeedsTransformUpdate(); } #else if (diff == StyleDifference::Layout) { setNeedsBoundariesUpdate(); if (style()->hasTransform()) setNeedsTransformUpdate(); } #endif _______ I don't know whether this will work or not. But I can give it a try. Thanks!
Ahmad Saleem
Comment 5 2022-10-12 11:52:03 PDT
Ahmad Saleem
Comment 6 2022-11-08 14:58:53 PST
(In reply to Ahmad Saleem from comment #5) > https://github.com/WebKit/WebKit/pull/5297 We need to account for case of "transition is from a style with transform to a style without it" and based on comment from Darin, we need to use like this: oldStyle && oldStyle->hasTransform() -> Unfortunately, I don't have expertise to write test case for above case of "transition is from a style with transform to a style without it", I am going to close my PR and leave it for someone else to take it up and fix it. Thanks!
Ahmad Saleem
Comment 7 2023-04-14 21:43:02 PDT
It seems to be now fixed in Safari Technology Preview 167 compared to Safari 16.4. We can close this by marking 'RESOLVED CONFIGURATION CHANGED'. :-) CCing - Karl to confirm as well.
Karl Dubost
Comment 8 2023-04-16 17:12:02 PDT
It was fixed by Bug 243493 ?
Ahmad Saleem
Comment 9 2023-04-16 17:25:15 PDT
(In reply to Karl Dubost from comment #8) > It was fixed by Bug 243493 ? LBSE is not turned on by default and I don't have it enabled as well. So I don't think it will be LBSE patch.
kari.pihkala
Comment 10 2023-04-26 03:15:44 PDT
I tested this on Safari Technology Preview 168 and it seems to be fixed. Thanks!
Note You need to log in before you can comment on or make changes to this bug.