Re: [csswg-drafts] [css-transitions-2] Start transitions on discrete animation types (#4441)

The CSS Working Group just discussed `[css-transitions-2] Start transitions on discrete animation types`, and agreed to the following:

* `RESOLVED: if a discretely animatable property is listed in a transition it will. by default the all keyword will not transition`

<details><summary>The full IRC log of that discussion</summary>
&lt;bramus> astearns: thanks oriol<br>
&lt;bramus> flackr: in current spec we explicitly dont transition discrete aniamtions types. we skip<br>
&lt;bramus> flackr: with resoltuion to animate display it would be useful for devs to transition discrete properties<br>
&lt;bramus> flackr: example in linked issue<br>
&lt;bramus> flackr: proposal is that we allow transitioniong discrete props but to preserve compat the all keyword would only match animatable types<br>
&lt;smfr> q+<br>
&lt;bramus> flackr: only if dev lists explicitly lists a discrete property it would transition<br>
&lt;astearns> ack smfr<br>
&lt;bramus> smfr: … timing function? steps timing to contorl when the value flips?<br>
&lt;bramus> flackr: sure you can<br>
&lt;bramus> flackr: step and step-start<br>
&lt;bramus> smfr: is there [missed] … the animation? wondering if timing function> .5 that is where discrete things flip<br>
&lt;bramus> flackr: my proposal is not to do something special here<br>
&lt;bramus> flackr: means that you can use any fn that crosses .5 treshold<br>
&lt;dbaron> You can also use a different transition-delay for the discrete property if you want to.<br>
&lt;bramus> smfr: trying to underrstand implications<br>
&lt;bramus> flackr: all would only include animatable props<br>
&lt;bramus> smfr: mech for keyframes?<br>
&lt;bramus> flackr: already the case. not building any new anim behavior here<br>
&lt;bramus> smfr: havent quite got in my head yet. is there a dif between props that animate discretely and those not at all?<br>
&lt;bramus> flackr: yes. you cant animate aninaton-name for example<br>
&lt;bramus> smfr: what about display?<br>
&lt;fantasai> well, we resolved to draft such a proposal into the css-display-4 draft<br>
&lt;bramus> flackr: we resolved on display last week<br>
&lt;bramus> smfr: doesnt this already work by virtue of .5 behavior?<br>
&lt;bramus> flackr: there is line in spec that limits to only animatable and not discrete<br>
&lt;bramus> tabatkins: you can animate a discrete prop but not transition one<br>
&lt;bramus> flackr: with waapi, devs can listen to transitionstart<br>
&lt;bramus> flackr: they could use this to enable transitions we do not support yet<br>
&lt;bramus> astearns: easier acces<br>
&lt;bramus> flackr: possible to acces. before no transitionstart ( = custonization point)<br>
&lt;masonf> q?<br>
&lt;bramus> plinss: some props are discrete because they are difficult to animate<br>
&lt;bramus> plinss: if an engine figures out how to make a discrete prop animate: is that allowed and would it then be treated as normal animated property?<br>
&lt;bramus> flackr: yes and yes<br>
&lt;fantasai> plinss++<br>
&lt;bramus> flackr: and would then be picked by up by `transition: all`<br>
&lt;bramus> plinss: can we detect this?<br>
&lt;astearns> ack fantasai<br>
&lt;bramus> fantasai: example: animate between 2 background imgs.<br>
&lt;bramus> fantasai: tarnsitionable with easing curbe<br>
&lt;bramus> fantasai: what would happen if it became animatable? compat problems? might be fine<br>
&lt;bramus> flackr: cases for waapi and css anims. they dont have a mechanism to know when the become animatable<br>
&lt;bramus> flackr: you could use this to feature detect if property is discrete or not<br>
&lt;fantasai> s/tarnsitionable with easing curbe/if author transitions with a particular easing curve assuming discrete/<br>
&lt;bramus> plinss: we may want to consider an `@supports` for this<br>
&lt;bramus> astearns: yes<br>
&lt;masonf> q?<br>
&lt;bramus> astearns: do we add ability to tell sth is discrete or animatable?<br>
&lt;masonf> q+<br>
&lt;astearns> ack masonf<br>
&lt;bramus> masonf: point out that there is an optional part 2 to add a new keyword<br>
&lt;bramus> astearns: lets discuss after<br>
&lt;astearns> ack fantasai<br>
&lt;bramus> fantasai: proposal is that you explicitly list a property that is discrete it will transition. whe you provide an easing curve it will flip at 50%?<br>
&lt;bramus> flackr: yes. latter part already implied by how animations work<br>
&lt;bramus> fantasai: seems reasonable<br>
&lt;bramus> astearns: proposed resolution: if a discretely animateable property is listed in a trantion it will. by default the all keyword will not transition<br>
&lt;bramus> flackr: anders said it better there, but effect is the same<br>
&lt;bramus> RESOLVED: if a discretely animatable property is listed in a transition it will. by default the all keyword will not transition<br>
&lt;bramus> astearns: 2nd part: can we have all opt in to this behavior?<br>
&lt;bramus> flackr: 2 options: other type of all keyword that is actually all, or a keyword to target discrete<br>
&lt;astearns> ack fantasai<br>
&lt;masonf> q+<br>
&lt;bramus> fantasai: i think if there is no demand we should not add it. idea to add discrete makes more sense.<br>
&lt;bramus> fantasai: you can then use it to apply a certain curve to only the discrete ones<br>
&lt;flackr> E.g. transition: all 1s ease, discrete step-end 1s;<br>
&lt;astearns> ack masonf<br>
&lt;bramus> flackr: example in irc is sth devs might do<br>
&lt;dholbert> q+<br>
&lt;bramus> masonf: +1 on discrete keyword<br>
&lt;bramus> astearns: i can see value in this<br>
&lt;astearns> ack dholbert<br>
&lt;bramus> astearns: but I might want to see actual real tarnsitions with particular groups of discrete props taht would be solved by this keyword before we resolve to add it<br>
&lt;astearns> s/see value/see theoretical value/<br>
&lt;bramus> dholbert: concern where prop changes from discrete to not discrete<br>
&lt;bramus> dholbert: could be problem for minor content<br>
&lt;bramus> dholbert: also curious for use cases<br>
&lt;bramus> flackr: first part already problem bc all matches [missed]<br>
&lt;bramus> flackr: second part less defined right now<br>
&lt;bramus> astearns: you can do custiomzation now by having discrete property explicitly listed, separetely from all<br>
&lt;bramus> flackr: yes<br>
&lt;bramus> flackr: do see value in discrete keyword<br>
&lt;bramus> flackr: but also fine with exploring use cases first<br>
&lt;bramus> astearns: what about a note in the spec that we consider this keyword and ask authors for use cases (or if we come up with some)?<br>
&lt;masonf> +1<br>
&lt;bramus> flackr: sure<br>
&lt;bramus> astearns: thats it we are at time<br>
&lt;argyle> 👋🏻<br>
</details>


-- 
GitHub Notification of comment by css-meeting-bot
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/4441#issuecomment-1351867996 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 14 December 2022 18:00:57 UTC