Re: [csswg-drafts] [mediaqueries-5] Updating the CSS media feature syntax for foldable & dual-screen devices (#5621)

The CSS Working Group just discussed `Foldable screens`, and agreed to the following:

* `RESOLVED: Adopt the multiscreen MQs into MQ5.`

<details><summary>The full IRC log of that discussion</summary>
&lt;TabAtkins> Topic: Foldable screens<br>
&lt;astearns> github: https://github.com/w3c/csswg-drafts/issues/5621<br>
&lt;TabAtkins> dlibby_: This is an updated proposal for primitives we'd like to introduce for dual-screen and foldable devices<br>
&lt;TabAtkins> dlibby_: This one is a new media feature that describes the number of logical display regions a viewport is spanning across<br>
&lt;TabAtkins> dlibby_: Not th edevice itself, the relationship of the viewport to the device regions<br>
&lt;TabAtkins> dlibby_: The syntax is in two axises to allow for future form factors to use the same feature<br>
&lt;TabAtkins> dlibby_: goes hand-in-hand with the environment vars we discussed yesterday<br>
&lt;heycam> q+<br>
&lt;TabAtkins> dlibby_: Looking for opinions on this and if it's okay to add to mq5<br>
&lt;TabAtkins> q+ myles<br>
&lt;florian> q+<br>
&lt;myles> q+<br>
&lt;Rossen_> ack heycam<br>
&lt;TabAtkins> heycam: my initial thoughts about this is whether these features are, don't wanna say complex bc the syntax isn't complex, but wondering if really there will be that many arrangements of displays that we need a feature shaped like this, as opposed to something simpler<br>
&lt;TabAtkins> dlibby_: in our original proposal we wer emore scoped, but that came with the baggage that as new form factors appeared, what is the syntax you would use for them?<br>
&lt;TabAtkins> dlibby_: So we feel this gives a more futur-eproof model, while allowing author to target today's devices<br>
&lt;Rossen_> ack myles<br>
&lt;TabAtkins> myles: Sof or width queries, for example, if you say (display-span-x: 3), is that *at least* three screens, or exactly 3?<br>
&lt;Rossen_> q?<br>
&lt;TabAtkins> dlibby_: Exactly, if you use the : or =. If you use &lt; or > it gives less or more<br>
&lt;smfr> q+<br>
&lt;TabAtkins> myles: This also suggests authors might have different layouts for each arrangement - a different for 2x1 vs 1x2 vs 2x2, etc. That's the intent?<br>
&lt;TabAtkins> dlibby_: Yes.<br>
&lt;Rossen_> ack fantasai<br>
&lt;Zakim> fantasai, you wanted to react to myles<br>
&lt;TabAtkins> fantasai: The mq would give you an exact number, but becuse it's an integer ti can take min/max prefixes as well, so you can just opt into "2 or more displays"<br>
&lt;myles> fantasai: display-span-x: min(2)?<br>
&lt;TabAtkins> fantasai: To respond to heycam, the reason I didn't want to do simpler syntax, if someone has a 3-fold device we'd need a new MQ<br>
&lt;TabAtkins> (myles, no, (min-display-span-x: 2))<br>
&lt;TabAtkins> fantasai: The syntax for this simple case isn't any harder ot use than a more "specialized" one, but it lets us extend to a grid easily<br>
&lt;TabAtkins> fantasai: it doesn't let us extend to a non-grid, tho<br>
&lt;TabAtkins> fantasai: but i think most of the cases we'll need to worry about will be a grid or simplification of a grid<br>
&lt;myles> (TabAtkins: oh! are all number-taking media queries supposed to automatically get min- and max- prefixes?)<br>
&lt;TabAtkins> fantasai: So didn't want to box us into a corner<br>
&lt;TabAtkins> (yes)<br>
&lt;Rossen_> q?<br>
&lt;Rossen_> ack florian<br>
&lt;TabAtkins> florian: i think this works nicely<br>
&lt;TabAtkins> florian: as discussed yesterday, desktops can b emore complex arrangements<br>
&lt;TabAtkins> florian: but this isn't just windows that can be slightly offset from each other, it's a special display mode<br>
&lt;TabAtkins> florian: And I think a grid is really the only realistic mode to deal with<br>
&lt;TabAtkins> florian: [shows off an example]<br>
&lt;TabAtkins> florian: So i think we're good<br>
&lt;Rossen_> q?<br>
&lt;Rossen_> ack smfr<br>
&lt;TabAtkins> smfr: Does the asnwer to these mqs depend on which screen the browser is on?<br>
&lt;TabAtkins> smfr: From samsung demos, browser can be on left, right, ro spanning both<br>
&lt;TabAtkins> smfr: So will these change?<br>
&lt;TabAtkins> dlibby_: Yes, if you're only on a single screen, your display-span will be 1<br>
&lt;TabAtkins> smfr: So not about the physical device, about the current configuration<br>
&lt;Rossen_> ack fantasai<br>
&lt;TabAtkins> fantasai: On that note, think we need some bikeshedding on this - we use "display" to refer to the physical device<br>
&lt;TabAtkins> fantasai: so like display-width vs width<br>
&lt;TabAtkins> fantasai: and we want consisten wording between env() and MQ<br>
&lt;TabAtkins> TabAtkins: note the MQ word is 'device-', not 'display-'<br>
&lt;TabAtkins> fantasai: Oh yeah. But the env() is using viewport, so we should be consistent between them<br>
&lt;Rossen_> q?<br>
&lt;TabAtkins> Rossen_: So any preferences or opinions?<br>
&lt;TabAtkins> TabAtkins: No strong opinion on word, but strong opinion towards naming consistency like elika said<br>
&lt;astearns> device-arrangement<br>
&lt;TabAtkins> florian: 'viewport' isn't great, it's how your viewport spans<br>
&lt;TabAtkins> heycam: perhaps something about presentation<br>
&lt;TabAtkins> fantasai: if you ahve a normal display it'll ahve a value of 1<br>
&lt;TabAtkins> heycam: so i think like 'display-span-x' will sound like it should match if your single window spans across both segments even if it's just acting like a normal window<br>
&lt;fantasai> i/heycam/TabAtkins: If your window spans a folded device, is that span 2 or span 1?<br>
&lt;TabAtkins> florian: if you're on a device with a seam between screens, then eys absolutely<br>
&lt;dholbert> present-<br>
&lt;TabAtkins> florian: But on a device with a seamless pane separation, up to the UA to decide which way it goes<br>
&lt;TabAtkins> dlibby_: valid point, goes down to what cam was mentioning - if you're in more of a tiled mode that the device is informing the UA about<br>
&lt;TabAtkins> dlibby_: So possibility of a seamless device not presenting itself as multipane if you're not doing something<br>
&lt;TabAtkins> smfr: some implication of spanning the whole utility area<br>
&lt;TabAtkins> smfr: if you span both screens, but half of one screen is filled with a different app, your browser is 1.5 screens wide<br>
&lt;TabAtkins> smfr: So without information about what size each pane is...<br>
&lt;TabAtkins> TabAtkins: That's what the env() is for, reporting those pane sizes<br>
&lt;TabAtkins> Rossen_: So yeah in your example, the shared pane will just have a smaller viewport for the browser in that pane<br>
&lt;TabAtkins> florian: so my suggestion is to resolve to adopt it, bikeshed naming in github<br>
&lt;TabAtkins> florian: But i think we're agreeing to the proposal overall, maybe need a few details to be clearer<br>
&lt;TabAtkins> florian: But not hearing real pushback<br>
&lt;Rossen_> q?<br>
&lt;myles> q+<br>
&lt;Rossen_> ack fantasai<br>
&lt;Zakim> fantasai, you wanted to comment on querying the gap<br>
&lt;TabAtkins> fantasai: agree with florian<br>
&lt;TabAtkins> fantasai: also might be useful to query info about the gap, how big it is and if there's content missing in the gap - if it doesn't paint or if it just jumps across<br>
&lt;TabAtkins> dlibby_: The env variables are designed let you avoid the gap, but perhaps there's a query to make it clearer up front<br>
&lt;TabAtkins> myles: are the env() indexed?<br>
&lt;TabAtkins> dlibby_: discussed that a bit yesterday, yes they are<br>
&lt;TabAtkins> dlibby_: based on discussion, should match the 2d grid indexing<br>
&lt;fantasai> The question of whether working on the "explode" model or the "window" model is probably relevant - http://fantasai.inkedblade.net/style/discuss/table-backgrounds/<br>
&lt;TabAtkins> Rossen_: So any objections to adopting them into MQ5?<br>
&lt;TabAtkins> RESOLVED: Adopt the multiscreen MQs into MQ5.<br>
&lt;TabAtkins> &lt;br until=":15"><br>
</details>


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


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

Received on Tuesday, 20 October 2020 21:12:40 UTC