Re: [csswg-drafts] [css-transforms-2] Preserve-3d + backface visibility semantics need to be clarified (#918)

The CSS Working Group just discussed `[css-transforms-2] Preserve-3d + backface visibility semantics need to be clarified`.

<details><summary>The full IRC log of that discussion</summary>
&lt;fantasai> dbaron: Not looking for a decision, wanted to summarize what's going on to make sure people are aware.<br>
&lt;fantasai> dbaron: The underlying issue in this old issue is that we have backface-visibility<br>
&lt;fantasai> dbaron: which hides things when facing backwards in 3D rotation<br>
&lt;fantasai> dbaron: but we don't have a good definition of what this means<br>
&lt;fantasai> dbaron: fundamental thing we're missing is "what is *this* that you are hiding" and "which descendants do you consider"<br>
&lt;fantasai> dbaron: Discussed with Matt Woodrow, basic proposal in the issue<br>
&lt;fantasai> dbaron: Matt wants to try prototyping, hopefully it won't break the world<br>
&lt;fantasai> dbaron: and if it works, we'd like to specify backface visibility this way<br>
&lt;fantasai> dbaron: it will require changes to all implementations<br>
&lt;fantasai> dbaron: These are things that are not particularly interoperable, or particularly sensible.<br>
&lt;TabAtkins> (I think this is the proposal (+ some clarifying comments in following comments) https://github.com/w3c/csswg-drafts/issues/918#issuecomment-1696711327)<br>
&lt;fantasai> dbaron: if you care about this feature, pay attention to this<br>
&lt;fantasai> dbaron: Beyond that, if people would like a summary I can try<br>
&lt;fantasai> dbaron: but gets very technical very quickly<br>
&lt;fantasai> Rossen_: Do we have the right people?<br>
&lt;fantasai> dbaron: Don't know person from Gecko<br>
&lt;fantasai> dholbert: Timothy Nickel, probably<br>
&lt;dholbert> s/Nickel/Nikkel/<br>
&lt;fantasai> dbaron: The two people both involved are both former Gecko now involved in other engines (Blink, WebKit) :)<br>
&lt;fantasai> dbaron: when you set backface-visibility: hidden, one question is which descendants do you apply to and which not<br>
&lt;fantasai> dbaron: we don't want to apply to a descendant that itself has a 3D transform<br>
&lt;fantasai> dbaron: because it might be rotated more and be visible. So it should be independent<br>
&lt;fantasai> dbaron: For starters, this probably is required by Web-compat; but probably also sensible behavior<br>
&lt;fantasai> dbaron: My suggestion was that we distinguish based on syntax of tranform<br>
&lt;fantasai> dbaron: i.e. whether you are 3D is based on whether you write translate() or translate3D()<br>
&lt;fantasai> dbaron: we got rid of such distinctions in the past, but I think it's the right thing to do here<br>
&lt;fantasai> dbaron: 1. [missed]<br>
&lt;fantasai> dbaron: 2. Can avoid discontinuity at animations<br>
&lt;fantasai> dbaron: you don't want backface-visibility participation to pop during the animation<br>
&lt;emilio> q+<br>
&lt;fantasai> dbaron: 3. It gives authors an escape hatch.<br>
&lt;fantasai> TabAtkins: TypedOM preserves that distinction for legacy reasons, but can continue to preserve<br>
&lt;fantasai> emilio: interpolation as a matrix?<br>
&lt;fantasai> dbaron: Your interpolation is either matrix() or matrix3D()<br>
&lt;fantasai> emilio: if it's preserved in the computed value, then seems reasonable<br>
&lt;fantasai> dbaron: Not ready to take a resolution yet<br>
&lt;fantasai> emilio: When you have matched transform lists, basically coalesce into something that assumes 3D, idk if that's the case in Chromium or WebKit<br>
&lt;fantasai> emilio: that may make this trigger unexpectedly<br>
&lt;Rossen_> ack emilio<br>
&lt;fantasai> dbaron: might need to audit some of those codepaths<br>
&lt;fantasai> dbaron: we removed some distinctions, might need to revisit<br>
&lt;fantasai> emilio: Part of the proposal makes backface-visibility be a CB for fixed descendants, but only in some cases?<br>
&lt;fantasai> emilio: that seems a bit annoying<br>
&lt;fantasai> emilio: changes to preserve3D ancestors could end up reparenting things in the box tree<br>
&lt;fantasai> emilio: doable but not fun<br>
&lt;fantasai> dbaron: We wrote it that way because strong suspicion it wouldn't be Web-compatible otherwise<br>
&lt;fantasai> emilio: because of [missed]<br>
&lt;fantasai> dbaron: Matt might remember more<br>
&lt;fantasai> dbaron: If we want telecon time, should schedule a separate breakout time, because we don't overlap on the two regular call times<br>
</details>


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


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

Received on Wednesday, 14 February 2024 00:38:05 UTC