RESOLVED CONFIGURATION CHANGED 189299
[Web Animations] Implement composite operations
https://bugs.webkit.org/show_bug.cgi?id=189299
Summary [Web Animations] Implement composite operations
Antoine Quint
Reported 2018-09-04 23:40:34 PDT
The Web Animations spec supports composite operations on keyframes, we should support this feature for complete spec support.
Attachments
Radar WebKit Bug Importer
Comment 1 2018-09-04 23:41:46 PDT
Ben Frain
Comment 2 2020-12-10 04:02:29 PST
Any update on this? End of 2020 and broad support everywhere but WebKit/Safari: https://caniuse.com/?search=Web%20Animations
Antoine Quint
Comment 3 2020-12-10 05:20:49 PST
Hi Ben. No update at the moment. I've got a prototype implementation in a development branch, but I have to invest more time to actually make it something that could be considered for landing into WebKit.
Ben Frain
Comment 4 2020-12-10 06:53:20 PST
Thanks for the update Antoine, hoping you get to it shortly. I've recently recorded a course on WAAPI and a shame when I have to add WebKit caveats like it is a 'red-headed stepchild'!
Antoine Quint
Comment 5 2021-09-17 07:01:41 PDT
The first step towards supporting this feature is covered by bug 230404 so that we support composite operations for software animations.
Brent Fulgham
Comment 6 2022-06-23 13:32:43 PDT
This is now: rdar://87213273
Antoine Quint
Comment 7 2022-07-05 01:39:54 PDT
Composite operations are now generally supported in WebKit and are enabled in Safari Technology Preview and Safari in macOS 13 and iOS 16 betas. The remaining blocking bugs paint a picture of outstanding compatibility issues that we are still working on but will be pretty specific to a given CSS property. The most important thing to be aware of is that properties that can be typically accelerated, such as "opacity", "filter", "transform", "translate", "scale" and "rotate" will not be fully accelerated if composite operations are used. Instead, the animation resolution will operate on the main thread, while the application of the property will operate on a GraphicsLayer. We are continuing to look into how to address this in the future.
Ben Frain
Comment 8 2022-12-08 01:51:55 PST
Simple operations like a composite add do not work as expected in Safari. Is it best to open a separate issue for that? This simple example: https://codepen.io/benfrain/pen/JjXQqVO Click 'Move Me' to start the box moving, and then click the 'Scale Me' button to add a scale (using composite: add) — in now way renders as expected in Safari. Fine in Firefox/Chrome.
Antoine Quint
Comment 9 2022-12-08 05:55:16 PST
(In reply to Ben Frain from comment #8) > Simple operations like a composite add do not work as expected in Safari. Is > it best to open a separate issue for that? > > This simple example: https://codepen.io/benfrain/pen/JjXQqVO > > Click 'Move Me' to start the box moving, and then click the 'Scale Me' > button to add a scale (using composite: add) — in now way renders as > expected in Safari. Fine in Firefox/Chrome. Yes, this is a specific issue. Could you file a dedicated bug report? I'll look into it.
Ben Frain
Comment 10 2022-12-08 07:12:42 PST
Antoine Quint
Comment 11 2023-05-10 10:48:27 PDT
This feature has been implemented for quite some time now.
Note You need to log in before you can comment on or make changes to this bug.