15:53:12 RRSAgent has joined #css 15:53:12 logging to https://www.w3.org/2022/09/28-css-irc 15:53:14 inviting RRSAgent 15:53:14 RRSAgent, make logs Public 15:53:15 Meeting: Cascading Style Sheets (CSS) Working Group Teleconference 15:53:31 oriol has joined #css 15:55:28 vmpstr has joined #css 15:55:34 gtalbot has joined #css 15:56:37 gtalbot has left #css 15:57:30 flackr has joined #css 16:00:11 khush has joined #css 16:00:17 present+ 16:00:43 present+ 16:01:08 present+ 16:01:13 jfkthame has joined #css 16:01:18 present+ 16:01:25 present+ 16:01:49 present+ 16:01:52 present+ 16:02:48 bradk has joined #css 16:02:52 ydaniv has joined #css 16:03:00 present+ 16:03:54 present+ 16:04:42 jondavis has joined #css 16:04:51 present+ 16:04:54 scribe: jcraig 16:04:58 present+ 16:05:09 present+ 16:05:15 present+ 16:05:15 present+ 16:05:23 Welcome ARIA! 16:05:30 topic: opt-in focus and at-order https://github.com/w3c/csswg-drafts/issues/7387 16:05:32 Topic: [css-flexbox][css-grid] Providing authors with a method of opting into following the visual order, rather than logical order 16:05:35 present+ 16:05:37 present+ 16:05:44 github: https://github.com/w3c/csswg-drafts/issues/7387 16:05:55 BGaraventa has joined #css 16:06:22 rachelandrew: several requests over the years 16:06:26 TylerWilcock has joined #css 16:06:38 css says stick with document order... works in most cases 16:07:04 but with grid in particular, can be a disconnected from the sighted focus or AT, screen reader... 16:07:06 Present+ 16:07:34 my initial proposal, can the author opt in to "visual" order instead of Dom/source 16:07:36 jondavis_ has joined #css 16:08:06 my proposal Rachel mentions is here: https://github.com/w3c/csswg-drafts/issues/7387#issuecomment-1217193918 16:08:21 fantasai proposed a more refined order @@@elika help?@@@ 16:08:37 rachel's use case analysis is here: https://github.com/w3c/csswg-drafts/issues/7387#issuecomment-1248754496 16:08:40 q? 16:08:41 so we need a way to define reading order if not logical in the DOM 16:08:42 scribenick: fantasai 16:08:52 q+ 16:08:52 chrishtr: Specific proposal from fantasai on August 16th (see above) 16:08:59 ... candidate for resolution 16:09:05 ... affects focus order and reading order simultaneously 16:09:07 dlibby has joined #css 16:09:23 https://github.com/w3c/csswg-drafts/issues/7387#issuecomment-1217193918 16:09:40 (oops, sorry dup of what fantasai said above) 16:09:44 ???: Just want to confirm it's for grid/flex, not abspos etc? 16:09:51 s/???/jamesn/ 16:09:54 rachelandrew: Yes, you can get disconnected order in abspos 16:09:59 ack jamesn 16:10:05 ... but I don't see people building entire layouts using abspos 16:10:15 s/???: /jamesn: / 16:10:16 ... things like grid-auto-flow: dense are cases where the won't know where things are 16:10:20 ... so scoping down 16:10:24 They are reordering, *and* we have a reliable way of knowing the order they're producing (as opposed to abspos/floats). 16:10:26 jamesn: support scoping down, just wanted to confirm 16:10:34 q? 16:10:51 iank_: Question, in flexbox there's various mechanisms to switch the order 16:11:01 ... e.g. flex-wrap: reverse 16:11:05 ... would this affect that as well? 16:11:21 rachelandrew: I think so, should behave similar way as when you have one of the grid values that allows reordering 16:11:29 ... if logically it looks like you're following the different order 16:11:36 Yes, I think they'd also reorder per the reading order of the writing mode on the element, I'd think. 16:11:36 ... but worth coming up with use cases to check 16:12:01 Rossen_: fantasai, can you give an overview of the proposal? 16:12:09 ... particularly effects on flex/grid and also on abspos 16:12:20 ... if mostly reviewing, don't need thorough minuting 16:12:33 https://github.com/w3c/csswg-drafts/issues/7387#issuecomment-1217193918 16:13:18 q+ 16:13:22 ack fantasai 16:14:08 fantasai: reviewing this proposal to add a reading order property with values: source (DOM), auto [default, would follow rendering order but not in cases that authors could not predict. final value: an integer that affects keyboard order 16:14:18 q+ 16:15:06 could also use it differently than the order property.... or use reading order in layout mode... so abspos elements reading order could be modified by the order value. 16:15:49 IMO author unpredictable layout methods should not be covered by auto... maybe a different keyword, but not by default 16:15:57 q+ 16:16:17 q- 16:16:38 s/unpredictable/predictable/ 16:16:59 e.g. if you're reversing the order, that doesn't mean there is no order,. should follow the layout. 16:17:23 q+ 16:17:26 q+ to clarify which would be the default (I had previously presumed source)? 16:18:24 ack me 16:19:10 Rossen_: how does this impact reading order vs focus management 16:19:15 ack Rossen_ 16:19:24 fantasai: Randomizing layout models indicate that the underlying order of the items doesn't matter, so in this case we want the UA to make the reading order match the visual order. 16:19:47 ... but if it's not randomizing, the source potentially has meaningful order and we should preserve that unless specifically overridden by the author 16:19:55 bradk has joined #css 16:20:14 aaronlev_ has joined #css 16:20:22 fantasai: reading order vs focus management... different ways to manipulate the default.... linear forwards or backwards 16:20:42 linear order is an artifact of the @@@ order 16:21:08 there should not be a disconnect between the order we choose for the reading order and the focus order 16:21:36 Rossen_: suppose I have items with tabindex, I swap the visual order, what happens 16:22:02 +1 to tabindex taking precedence 16:22:10 fantasai: interaction with tabindex needs defining... explicit tabindex should be respected 16:22:14 q- 16:22:16 ack iank_ 16:22:27 iank_: Property does 2 things, work at different levels 16:22:34 iank_: e.g. reading-order, works at the container level 16:22:45 iank_: I think it's a mistake to also bundle the 'integer' variant on top of that 16:22:51 iank_: it seems to me that it operates on the item instead 16:22:59 iank_: so if we want the integer variant, that should likely be a separate property 16:23:06 bradk has joined #css 16:23:21 fantasai: think of the value similar to z-index: auto versus integer 16:23:46 iank_: would then need to set on every item? 16:24:23 fantasai: I see that as an unsolved issue... integer versus auto can't be resolved at the element level 16:24:37 s/see that as/see, that's 16:25:08 fantasai: could drop the source value unless someone really wants it 16:25:12 q? 16:25:32 could be useful as separate properties in case you want to define them independently 16:26:18 iank_: are valid use cases for source order 16:26:29 ... core use cases for column-reverse is chat bubbles that propagate upwards 16:26:35 ... but you're saying that doesn't affect it ... 16:26:45 iank_: I think I'll need to see all the interactions written down 16:26:52 ... before I can evaluate it as a whole 16:26:55 ... lots of subtle interactions here 16:27:09 q+ 16:27:29 jcraig: I agree lots of subtleties in the layout examples 16:27:34 q+ 16:27:50 ... some of the other subtleties mentioned last night are what's supposed to happen to either a keyboard user's focus or an AT user's focus, such as screenreader 16:27:56 ... not detectable 16:28:01 ... what happens when the order changes on the fly? 16:28:17 ... use cases were based on dynamic interaction of values of these orders might change 16:28:28 ... what happens to the users keyboard focus or AT focus, when metaphorica rug gets pulled out? 16:28:42 ... If JS interaction, author should maybe call .focus() after UI modification 16:28:47 ... but in this case, not a CSS method for doing this 16:29:01 ... do we expect this to be primary rendering layout in CSS and then need to follow up with focus method afterwards? 16:29:05 ... or other interactions? 16:30:03 fantasai: focus should stay on the same element. but its relative order to other elements around it 16:30:18 ... can change 16:30:24 fantasai: only have a problem if you remove the element you're on 16:30:38 jcraig: afraid there's some unpredictable cases, e.g. you tab through and get stuck in a loop 16:30:54 ... so interactions where we might not be able to rely on it 16:30:58 ... could maybe get a good default 16:31:03 q? 16:31:07 ... when that happens, maybe call focus() 16:31:07 ack jcraig 16:31:24 ... I'm just worried about a layout method that changes reading/kb/AT order not tied to a JS call 16:31:44 rachelandrew: In terms of having all of the likely combinations that might want to assess, would it be helpful for me to do? 16:31:47 ... discussed with Chrome DevRel 16:31:59 ... would it be helpful to come up with the different combnations of things are that people could see this being used for? 16:32:02 q? 16:32:03 s/JS call/JS call (e.g. focus()) that would not to be used to correct it/ 16:32:04 jcraig: that would be great 16:32:05 ack rachelandrew 16:32:07 q+ 16:32:08 q+ 16:32:28 q+ to volunteer to work on that use case list with rachelandrew 16:32:42 they are all with me here in NY so I'll go and talk to folks :) 16:32:50 chrishtr: I suggest possible resolution, in general this is a good idea, need to work out the details, so go work it up in a draft spec 16:32:56 me q+ 16:32:57 ack chrishtr 16:33:03 ack jcraig 16:33:03 jcraig, you wanted to volunteer to work on that use case list with rachelandrew 16:33:05 jcraig: happy to work on the list with rachelandrew 16:33:13 ... and try to throw in as many AT challenges as I can 16:33:16 ack fantasai 16:33:41 display-4 SGTM 16:33:56 fantasai: Suggest drafting into css-display-4 16:34:03 fantasai: (which doesn't yet exist) 16:34:12 fantasai: then we can work on details, evaluate, and decide if we like it 16:34:22 Rossen_: Opinions from others? 16:35:03 ????: I do agree with what you've been talking about, just read through the bug, and there are some things I'm not familiar enough that I can't provide info on, but like idea of moving this 16:35:22 ????: One scenario is that basically curious how it works with ARIA widgets, e.g. listbox that has options 16:35:30 s/????/bryang/ 16:35:37 bryang: style various list items, once you add aria roles to it [missed] 16:35:50 bryang: I'd be happy to be part of future discussion if that's helpful 16:35:55 Rossen_: Thanks, helpful 16:36:09 Rossen_: anything else on this topic? 16:36:15 Rossen_: we have concrete direction 16:36:38 Rossen_: talked about this in 2015, glad to see we've got a direction here 16:36:55 RESOLVED: Draft reading-order (minus source value) into css-display-4 ED 16:37:09 thanks all, I'll start a list and ping people to contribute 16:37:11 Rossen_: Ok, back to our regularly scheduled CSS topics. Welcome to stay or leave 16:37:16 scribe- jcraig 16:37:39 Topic: FPWD of css-nesting-1 16:37:49 chrishtr: Apparently already in FPWD 16:38:17 Topic: Container baselines with reverse directions 16:38:34 github: https://github.com/w3c/csswg-drafts/issues/7776 16:38:46 s/????: I do agree /BGaraventa: I do agree / 16:38:58 s/bryang/BGaraventa/ 16:39:14 orieo1 has joined #css 16:39:15 💨Don’t miss this chance to be Rich... (full message at ) 16:39:16 emeyer has joined #css 16:39:33 emeyer has left #css 16:40:08 ScribeNick: TabAtkins 16:40:38 iank_: at TPAC we did a bunch of baseline stuff 16:41:01 iank_: Today, if we have flex-direction:*-reverse, we will take the first baseline from the first in DOM order, the "logical" first 16:41:07 iank_: this is interoperable across all browsers 16:41:11 orieo1 has joined #css 16:41:22 iank_: The spec doesn't say this, I believe it says to take flex-direction into account, which means browsers are all wrong today 16:41:32 iank_: We're willing to make this change, I don't have strong opinions 16:41:33 rrsagent, make minutes 16:41:33 I have made the request to generate https://www.w3.org/2022/09/28-css-minutes.html jcraig 16:41:37 q? 16:41:55 fantasai: I think the spec change makes sense, if you ask for last-baseline you want the baseline at the bottom, not the top 16:42:01 fantasai: So I think that makes the most sense 16:42:06 iank_: It'll likely be compatible 16:42:35 iank_: One possible case is people doing column-reverse and having overflow propogate things upwards, so the "first" thing will be way up in the overflow area and get clamped to the block-start edge 16:42:46 fantasai: They're probably not asking for baseline alignment in these cases, so probably fine? 16:42:53 iank_: Yup, just a subtle side effect, I'm fine with it 16:42:58 I'm fine with this. 16:43:48 RESOLVED: flex baselines take flex ordering into account so first/last use roughly *physical* directions 16:44:02 Topic: flex-container baselines with wrap-reverse 16:44:19 iank_: Similar to the alst, but I don't think this is in the spec currently 16:44:32 iank_: You can have flex: row wrap-reverse, so the lines are inverted 16:44:42 iank_: Currently impls will take the last baseline from the visually last line 16:44:58 fantasai: I think this is basically the same as the previous, and the spec says "startmost" or "endmost", so that's alreayd in spec 16:45:21 TabAtkins: startmost and endmost have strict meanings 16:45:23 💨Don’t miss this chance to be Rich... (full message at ) 16:46:00 https://github.com/w3c/csswg-drafts/issues/995 16:46:21 fantasai: actually I think it's somewhat unclear, "start" is a little ambiguous with "flex-start" in Flexbox 16:46:35 fantasai: So we should do some clarifying edits 16:46:51 fantasai: But yeah, if we're accounting for flex-direction we should absolutely do flex-wrap as well 16:46:55 fantasai: they're together 16:47:07 fantasai: So we should make sure the spec is clear about this 16:47:16 fantasai: Might have forgotten to clarify that it was a flex vs writing mode 16:47:51 fantasai: I think it's clear that you do both of them with the same set of directions, the spec just isn't entirely clear that you should be using writing-mode order rather than flex order 16:48:04 "RESOLVED: take the visually first line when considering baseline alignment in flexboxes" 16:48:07 from the issue 16:48:16 (I disagree and think it's correct as is, but am fine with making it more explicit) 16:49:03 Topic: Last remembered size when fragmented 16:49:19 oriol: continuing discussion 16:49:24 s/@@@elika help?@@@/listed below/ 16:49:32 oriol: what size to record as last remembered size when ther'e smultiple fragments? 16:49:47 oriol: in discussion, preferred behavior was taking all frags into account, but we weren't sure if that was possible 16:50:00 oriol: the ResizeObserver API supposedly only returned the frist fragment size 16:50:19 oriol: but in Blink, while a single size is exposed, it's not the first fragment size as the spec says; instead it's the sum of the block sizes of the fragments 16:50:33 oriol: So perhaps by accident, the last remembered size is behaving as we desired in blink already 16:50:57 oriol: So I implemented a way in RO to track size per fragments, not enabled yet but used by last remembered size 16:51:12 oriol: So impls have this behavior we thought was better in discussion, so I think we can resolve on this 16:51:34 oriol: Precisely, the last remembered block size will be the sum of the fragment block sizes, while last remembered inline size is the max of the fragment inline sizes 16:51:49 (As if pasting all the fragments together block-wise, then taking boudning box) 16:51:52 that sounds good to me - its a long standing issue that we aren't taking the max. 16:52:27 Rossen_: I'm assuming that, without knowing current impl, what we used to have in Edge especially for variable-size frags was we used boudning box of all fragments as the size 16:52:43 Rossen_: What I'm hearing is matching that 16:52:45 TabAtkins: No, that's not right 16:53:02 TabAtkins: The summary that I put in is right, it's as if you too all the fragments, pasted them together, and then took the bounding box 16:53:09 TabAtkins: not take the bounding box as they exist on the page 16:53:14 Rossen_: That's what I meant to say 16:53:32 oriol: [missed, something about columsn] 16:53:38 iank_: This sounds good to me 16:53:54 iank_: Note that we need to ignore repeated things like table headers 16:53:57 fantasai: Do we? 16:54:07 Rossen_: And box-decoration? 16:54:19 iank_: Repeated table headers, for example, if you take the stitched size... 16:54:26 iank_: the table header won't vary between the fragmentainers 16:54:35 iank_: So if you have a repeated frag you just want to take the first 16:54:39 iank_: It's an edge case tho 16:54:49 Rossen_: what about border-decoration:repeat? 16:54:58 Rossen_: ARe you ignoring the borders along the slices? 16:55:08 box-decoration: clone 16:55:18 oriol: Re: decos, we're remembering content size, so it's not including the borders 16:55:42 oriol: Re: tables, the last remembered size is only used when the element has size containment, and I think tables can't have size containment so it doesn't matter in practice 16:56:02 Rossen_: Stepping back, proposal lsounds good. Think there will be some details as we implement. 16:56:13 Rossen_: But I think the path forward sounds good 16:56:21 Rossen_: thoughts or objections? 16:56:55 RESOLVED: Last remembered size uses the "stitch together in block axis" bounding box 16:57:11 fantasai: We've had interesting convos about RO 16:57:19 fantasai: Many inconsistencies between planned and implemented 16:57:23 fantasai: Who's working on this? 16:57:32 TabAtkins: RO has new editors 16:57:58 oriol: I can try to drive something to make the spec handle different fragments, like what I impld in Firefox 16:58:03 oriol: But there are unclear details 16:58:18 fantasai: We also have a previous discussion, ,maybe from A Coruna, about this? 16:58:35 oriol: I think we have a resolution that API shoudl extend to expose fragments, it's just not clear how to do so in some cases 16:58:49 fantasai: Think we discussed an array of fragments, we just didn't do that in first version because it shipped before review 16:59:15 oriol: Yes, impl currently returns an array that has 1 item, in FF it's the first... 16:59:21 Rossen_: Wait is this part of the topic? 16:59:39 fantasai: My point is just that we're basing decisions on RO but RO is shaky, and we haven't followed up on resolutions we made for RO. 16:59:49 oriol: emilio 16:59:54 oriol: is the new editor 16:59:54 Having the first item in the array be the sum of all fragments makes *no sense* 17:00:01 I gotta go. Bye. 17:00:09 oriol: I added some RO issues to the agenda, hopefully we can handle those 17:00:19 oriol: I can try to change the spec to handle fragments 17:00:20 Either it's not an array and it's the sum of all fragments, or its an array of multiple items each representing a fragment 17:00:39 Rossen_: Ok, please do that and raise issues if there are any new questions 17:00:46 github-bot: end topic 17:02:05 Zakim, end meeting 17:02:05 As of this point the attendees have been khush, flackr, Rossen_, JakeA, jcraig, florian, jamesn, ydaniv, jfkthame, rachelandrew, plinss, chrishtr, oriol, TabAtkins, bradk, miriam, 17:02:08 ... dbaron 17:02:08 RRSAgent, please draft minutes v2 17:02:08 I have made the request to generate https://www.w3.org/2022/09/28-css-minutes.html Zakim 17:02:10 I am happy to have been of service, Rossen_; please remember to excuse RRSAgent. Goodbye 17:02:14 Zakim has left #css 17:03:13 jfkthame has left #css 17:20:43 emeyer has joined #css 17:20:47 emeyer has left #css 18:22:31 bradk has joined #css 18:24:06 bradk has joined #css 19:28:27 emeyer has joined #css 20:15:00 jensimmons has joined #css 20:24:12 jensimmons has joined #css 21:33:01 Rossen has joined #css 21:37:16 leaverou has joined #css 21:37:51 shans has joined #css 21:42:25 sylvaing has joined #css 21:42:59 projector has joined #css