14:54:38 RRSAgent has joined #openui 14:54:42 logging to https://www.w3.org/2023/05/25-openui-irc 15:04:19 bkardell_ has joined #openui 15:04:56 present+ 15:07:24 Topic: [accordion] Differing interpretations/models of exclusivity #752 15:07:24 github: https://github.com/openui/open-ui/issues/752 15:07:32 dbaron: there's maybe two different accordion things we could discuss, bkardell_ raised this one 15:07:47 dbaron: there are different notions of exclusive accordions across design systems 15:08:06 dbaron: the brief distinction is the more common one is either 0 or more items to be open at a time 15:08:35 dbaron: the less common one is, Google Pixel product page, it is exactly 1; rather than 0 or 1 15:08:53 dbaron: it starts with 1 open and there is no way to close the opened one without opening another 15:09:02 dbaron: I think it was FAST that did it as well 15:09:13 scotto has joined #openui 15:09:22 dbaron: one of them has the option to be exclusive and it does it this way but it's controls are a little weird 15:09:41 dbaron: my proposal to handle this that we should say that if you want to do this you need to do it from script 15:10:07 dbaron: since it's not that common and it requires unusual UI to do it well to have the disappearing control we don't provide it as part of the platform 15:10:09 q? 15:10:12 q+ 15:10:21 ack bkardell_ 15:10:38 present+ 15:10:46 bkardell_: my concern here is that it seems to be out of vogue 15:10:54 bkardell_: but it used to be the dominant paradigm 15:10:59 bkardell_: it's just tabs rarely 15:11:11 bkardell_: for the exclusive version of this, most libs used to have this 15:11:24 bkardell_: I call it the highlander one but there has to be 1 at all times 15:12:04 bkardell_: one note I wanted to make, there are three or four systems that do it 15:12:12 q+ 15:12:22 dbaron: I called it exact exclusive 15:12:56 bkardell_: I don't think we're far enough along in this proposal to say that I disagree, but I'd love to file issues on those systems and have them weigh in 15:13:07 bkardell_: I suspect a lot of them will have some insights or maybe none 15:13:12 bkardell_: we would benefit from that 15:13:35 bkardell_: the reason it matters is the way in which you need to spec this is very different 15:13:43 bkardell_: they're basically radio buttons 15:14:03 bkardell_: radio buttons, can be none but if you select one; there has to be one 15:14:14 dbaron: I think either goes down that weirdish path 15:14:37 dbaron: I haven't seen the radio button scenario where it starts off at 0 but then when you go to 1 it then can't go to 0 15:14:44 bkardell_: this really matters? 15:15:01 dbaron: the always 1 introduces a few issues how to specify it 15:15:42 Scribe+ bkardell_ 15:15:59 Scribe: gregwhitworth 15:16:01 gregwhitworth: I dont disagree that there are use cases, but I agree the specification has to change 15:16:03 Scribe+ bkardell_ 15:16:39 gregwhitworth: it sounds like david has tackled the 90% use case - let's theoretically pretend we add an attribute later on that is exclusive - could be implement it after the fact 15:16:59 dbaron: I think it can probably be added, but it's somewhat awkward 15:17:09 dbaron: the markup for this pattern is that there is no container 15:17:34 dbaron: it's linking a bunch of details elements with the name attribute 15:17:51 dbaron: which one wins, it's a little weird 15:18:19 bkardell_: anyone could argue that if you have a default in exclusive accordions and if any one of them is not defined as opened the first one is open 15:18:28 dbaron: that's probably fine 15:18:47 bkardell_: it would mean that if you took one out you would have to search the tree to find the next first one 15:19:01 chrishtr: I think we can add this on later 15:19:07 chrishtr: do you think that's a bad thing to do? 15:19:27 bkardell_: I think the purpose of the group is to pave the cowpaths and present something and I think we're reading tea leaves here a bit 15:19:36 bkardell_: I won't stand in the way of progress 15:20:05 bkardell_: I think it would be a good practice for us to bring in folks with library with differences that they do have good research for why they did what they did 15:20:11 q+ 15:20:18 ack gregwhitworth 15:20:34 chrishtr: I agree, but we also need to incubate things to improve the platform 15:20:37 bkardell_: agreed 15:20:59 chrishtr: in the interest of the second, that's where my suggestion is to not do it for now to reduce the complexity 15:21:06 chrishtr: do you disagree 15:21:19 bkardell_: no, I think we're early enough; it's a reasonable suggestion 15:21:27 ack scotto 15:21:35 scotto: one thing about this, well two things 15:22:19 scotto: while we're looking at radio buttons as a paradigm to not hold them on a pedestal and when you make a choice you can never undo it the need to unselect things so they move to checkboxes and get other issues 15:22:39 scotto: I personally think this is a good way for us to create a distinction between tabs and accordions behave 15:22:59 scotto: since tabs have aria semantics and accordions don't have actual mappings to speak of 15:23:26 scotto: a tab widget where there is one with always a persistent tab but an accordion can be something 0 - 1 15:23:36 bkardell_: we got here because it's a better pattern 15:23:56 bkardell_: there are a lot of subtle interactions and I want to ensure folks that aren't in this room 15:24:07 scotto: I think we could leverage this until told otherwise 15:24:18 bkardell_: agreed, but let's invite 15:24:29 chrishtr: so you're agreeing with dbaron and myself? 15:24:32 scotto: yeah 15:24:48 scotto: I would like us to generally try to not make one thing be everything 15:25:03 scotto: we've come up with one thing that does 17 different things 15:25:41 dbaron: for this specific issue is probably two pieces for a resolution 15:26:16 dbaron: 1. The current plan of record is this exclusive thing needs to be done in script and I will try and reach out to the people that design these widgets to get feedback 15:26:36 s/exclusive/exact exclusive/ 15:27:26 Proposed Resolution: Exact exclusive will not be a part of the proposal at this time and we'll tell people it needs to be done in script 15:28:09 RESOLVED: Exact exclusive will not be a part of the proposal at this time and we'll tell people it needs to be done in script 15:28:43 Topic: Proposal for Exclusive Accordions 15:29:04 dbaron: I notice there aren't many people on the call today 15:29:18 dbaron: one of the ideas behind this proposal; try and do some small things that we can do faster 15:29:29 dbaron: and part of trying to do that; how fast is faster essentially 15:29:45 dbaron: given the number of people I don't want to constrain this too much today 15:29:59 dbaron: how much discussion should we have this in Open UI before we open an HTML PR 15:30:06 dbaron: it's not going to get merged tomorrow 15:30:30 dbaron: we should open it up to the wider group, probably next week when there are more before we do that 15:30:32 q+ 15:30:43 bkardell_: asking preliminarily? 15:30:54 dbaron: yes, relevant folks are here but will wait for next week 15:31:08 chrishtr: in particular there were two areas to verify 15:31:19 chrishtr: 1 - details and summary can be used as the basis of this? 15:31:29 chrishtr: I want to ensure that we can and know of any blockers 15:31:36 chrishtr: a11y and styling dimensions to that 15:31:46 chrishtr: other than that - I think things are straight forward and has legs 15:31:57 dbaron: I have been trying to make parallel progress on those other topics 15:32:22 scotto: in regards to going quickly; I've brought up a number of things where it's footgun but with this specific effort 15:32:41 scotto: doing something this useful and not addressing the underlying issues will be more widely used 15:32:56 scotto: the a11y concerns will be there either way; they don't block your work 15:33:07 scotto: there are some things we can talk about a bit more 15:33:33 scotto: they already have an expand and collapse state that can open and close but what happens when you're in this grouping that can close something that is no longer functional 15:33:45 scotto: do we need to add in a disabled state that currently isn't present 15:34:06 scotto: is it inset and mappings that can be updated of X number things that are toggle buttons 15:34:19 scotto: I'm on the first of 1 of N and it's expanded so I know the others are not 15:34:39 scotto: and that can be done relatively quickly and defer to Aaron on speed of mappings to get into the platform 15:35:04 scotto: the a11y content model issues with details and summary will always remain; I don't know how much we can fix these things 15:35:15 chrishtr: are there some that are not fixable with any design, or legacy? 15:35:21 scotto: a little bit of both 15:35:52 scotto: I've seen accordions where there is a primary trigger and then a paragraph that comes after that with "more...." that can be expanded/collapsed 15:36:18 scotto: if I have a "heading" and follow that up with a paragraph and a table all of that becomes the a11y name for this control and people can and do this 15:36:37 scotto: significantly change how this is constructed because "ALL" of it is the trigger 15:37:03 chrishtr: sounds like you want some additional text that is visible to improve the a11y name 15:37:18 scotto: that doesn't need to get in the way to make details summary into an accordion 15:37:30 chrishtr: I think that could be addressed with a child of details 15:37:45 chrishtr: summary-subheading or whatever 15:37:51 scotto: yes, there are things that need to happen now, no but how do we push this forward? 15:37:53 Scribe+ dbaron 15:38:15 bkardell_: I was just going to mention to put the toggle button on the agenda today? 15:38:19 Present+ 15:38:23 Present+ gregwhitworth 15:38:30 chrishtr: we've discussed that one 15:38:43 chrishtr: dbaron do you want to discuss why you think this is better 15:38:57 dbaron: some of the toggle button stuff runs into the issues we faced with CSS Toggles 15:39:31 dbaron: one thing that does some showing/hiding of content but you don't know what kind of thing it is so you can use it for multiple widgets and maybe those things should be distinguished? 15:39:47 Present+ scotto 15:39:49 scotto: the issue that I take with that is that the same thing could be said of details/summary 15:40:00 scotto: they can be strung together to make a tree component 15:40:20 scotto: the only thing that it can't be done is a typical tab solution 15:40:42 scotto: it is limiting in some of the layouts that you can do because you HAVE to have a summary inside of your details 15:41:08 scotto: the toggle button was done with popover but it would not be about promoting something to the top layer and rendering it to the DOM 15:41:21 scotto: the open/close hamburger thing it doesn't need to be top layer 15:42:13 scotto: a lot of problems with details/summary and their current mappings are completely bypassed because you can have a button inside of a heading but with a summary it can be screwy depending on if it is in a summary 15:42:38 scotto: I wasn't saying that that toggle has to be involved in details/summary but it was a primitive to build with 15:42:50 bkardell_: but if in history we did a toggle button, we would be in a different place 15:43:09 scotto: it's a basic piece that could be used as a building block to build a lot of other components 15:43:45 scotto: with the whole popover thing is that no one could explain what it was because it could be so many different things when we created it first as an element 15:44:10 scotto: the button already has is to have HTML & ARIA and it's been over a decade of this and it hasn't come to pass 15:44:24 scotto: it seems to have a button to be able to toggle content but haven't added it to the platform 15:46:21 q+ 15:47:17 ack gregwhitworth 15:47:46 chrishtr: the other core question we had, are there things that are not fixable about details & summary with work; and we don't think they're un-fixable 15:47:53 scotto: yeah, I think that's largely true 15:48:40 scotto: I mean, unpopular opinion, HTML being very permissive has cause many a11y issues whereas if they were more strict so there is no way that we can stop people from putting things inside the summary element, so that's always going to be there 15:48:50 scotto: it was more important to render something than break 15:49:00 chrishtr: right, even a new element would have that issue 15:49:25 chrishtr: let's put them on the roadmap and get them filed and the Chrome team will prioritize those to get them fixed 15:49:35 chrishtr: please enumerate them 15:49:53 chrishtr: I dropped them into the doc that you shared; if you want me to sync up and clean up the doc 15:50:07 dbaron: it's useful but I did some other things yesterday afternoon 15:50:38 bkardell_: just wanted to say that um, I get why we want to go really fast and a relatively easy one; it's pretty light on a lot right now 15:50:53 bkardell_: I will see if there are any issues that I feel like opening or not 15:51:06 bkardell_: do you have a fork of HTML that you've been working on with these ideas 15:51:08 dbaron: no 15:51:28 bkardell_: so what you're asking is "should you start the HTML PR fork?" 15:51:37 dbaron: yes 15:51:48 bkardell_: I think yes, because when authoring them you end up finding issues 15:51:55 q? 15:51:58 ack bkardell_ 15:54:14 chrishtr: this isn't about speed but being incremental 15:55:27 dbaron: I should add, the doc I shared with Scott is for it to turn into explainerish and we should leverage it to fix all of the a11y issues and solutions to them 15:56:23 chrishtr: bkardell_ and scotto you both have by far provided the most feedback on this so I want to ensure you're in alignment 15:56:42 scotto: yes, they do it already it just makes easier and it's not something they won't experience today 15:57:05 Zakim, end meeting 15:57:05 As of this point the attendees have been bkardell_, chrishtr, dbaron, gregwhitworth, scotto 15:57:07 RRSAgent, please draft minutes 15:57:08 I have made the request to generate https://www.w3.org/2023/05/25-openui-minutes.html Zakim 15:57:11 I am happy to have been of service, gregwhitworth; please remember to excuse RRSAgent. Goodbye 15:57:15 Zakim has left #openui 16:04:18 RRSAgent, make logs public 16:04:24 RRSAgent, please draft minutes v2 16:04:25 I have made the request to generate https://www.w3.org/2023/05/25-openui-minutes.html dbaron 16:04:56 Meeting: Open UI Meeting 16:04:59 Chair: gregwhitworth