<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>189299</bug_id>
          
          <creation_ts>2018-09-04 23:40:34 -0700</creation_ts>
          <short_desc>[Web Animations] Implement composite operations</short_desc>
          <delta_ts>2023-05-10 10:48:27 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Animations</component>
          <version>Safari Technology Preview</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>CONFIGURATION CHANGED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>232081</dependson>
    
    <dependson>232082</dependson>
    
    <dependson>232085</dependson>
    
    <dependson>232087</dependson>
    
    <dependson>230404</dependson>
    
    <dependson>232084</dependson>
    
    <dependson>232086</dependson>
    
    <dependson>235596</dependson>
    
    <dependson>236447</dependson>
    
    <dependson>242185</dependson>
          <blocked>218910</blocked>
    
    <blocked>220848</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Antoine Quint">graouts</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>augus.dupin</cc>
    
    <cc>bfulgham</cc>
    
    <cc>contact</cc>
    
    <cc>dino</cc>
    
    <cc>graouts</cc>
    
    <cc>nmouchtaris</cc>
    
    <cc>vincentriemer</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1456644</commentid>
    <comment_count>0</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2018-09-04 23:40:34 -0700</bug_when>
    <thetext>The Web Animations spec supports composite operations on keyframes, we should support this feature for complete spec support.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456646</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-09-04 23:41:46 -0700</bug_when>
    <thetext>&lt;rdar://problem/44128785&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1713481</commentid>
    <comment_count>2</comment_count>
    <who name="Ben Frain">contact</who>
    <bug_when>2020-12-10 04:02:29 -0800</bug_when>
    <thetext>Any update on this? End of 2020 and broad support everywhere but WebKit/Safari: https://caniuse.com/?search=Web%20Animations</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1713498</commentid>
    <comment_count>3</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-12-10 05:20:49 -0800</bug_when>
    <thetext>Hi Ben. No update at the moment. I&apos;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.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1713529</commentid>
    <comment_count>4</comment_count>
    <who name="Ben Frain">contact</who>
    <bug_when>2020-12-10 06:53:20 -0800</bug_when>
    <thetext>Thanks for the update Antoine, hoping you get to it shortly. I&apos;ve recently recorded a course on WAAPI and a shame when I have to add WebKit caveats like it is a &apos;red-headed stepchild&apos;!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1794422</commentid>
    <comment_count>5</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2021-09-17 07:01:41 -0700</bug_when>
    <thetext>The first step towards supporting this feature is covered by bug 230404 so that we support composite operations for software animations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1877799</commentid>
    <comment_count>6</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2022-06-23 13:32:43 -0700</bug_when>
    <thetext>This is now:
rdar://87213273</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1880650</commentid>
    <comment_count>7</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-07-05 01:39:54 -0700</bug_when>
    <thetext>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 &quot;opacity&quot;, &quot;filter&quot;, &quot;transform&quot;, &quot;translate&quot;, &quot;scale&quot; and &quot;rotate&quot; 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.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1917530</commentid>
    <comment_count>8</comment_count>
    <who name="Ben Frain">contact</who>
    <bug_when>2022-12-08 01:51:55 -0800</bug_when>
    <thetext>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 &apos;Move Me&apos; to start the box moving, and then click the &apos;Scale Me&apos; button to add a scale (using composite: add) — in now way renders as expected in Safari. Fine in Firefox/Chrome.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1917559</commentid>
    <comment_count>9</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2022-12-08 05:55:16 -0800</bug_when>
    <thetext>(In reply to Ben Frain from comment #8)
&gt; Simple operations like a composite add do not work as expected in Safari. Is
&gt; it best to open a separate issue for that?
&gt; 
&gt; This simple example: https://codepen.io/benfrain/pen/JjXQqVO 
&gt; 
&gt; Click &apos;Move Me&apos; to start the box moving, and then click the &apos;Scale Me&apos;
&gt; button to add a scale (using composite: add) — in now way renders as
&gt; expected in Safari. Fine in Firefox/Chrome.

Yes, this is a specific issue. Could you file a dedicated bug report? I&apos;ll look into it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1917575</commentid>
    <comment_count>10</comment_count>
    <who name="Ben Frain">contact</who>
    <bug_when>2022-12-08 07:12:42 -0800</bug_when>
    <thetext>Done https://bugs.webkit.org/show_bug.cgi?id=248944</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1954380</commentid>
    <comment_count>11</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2023-05-10 10:48:27 -0700</bug_when>
    <thetext>This feature has been implemented for quite some time now.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>