18:02:50 RRSAgent has joined #openui 18:02:50 logging to https://www.w3.org/2021/04/08-openui-irc 18:03:00 Zakim, start meeting 18:03:00 RRSAgent, make logs Public 18:03:01 please title this meeting ("meeting: ..."), melanierichards 18:03:25 meeting: Open UI Telecon 18:03:29 masonf has joined #openui 18:03:32 present+ 18:03:36 present+ 18:03:40 present+ 18:03:56 scribenick: hdv 18:03:57 present+ 18:04:00 present+ 18:04:04 present+ 18:04:23 present+ 18:04:25 RRSAgent, draft minutes 18:04:25 I have made the request to generate https://www.w3.org/2021/04/08-openui-minutes.html hdv 18:04:29 bkardell_ has joined #openui 18:04:29 present+ 18:04:39 present+ 18:04:40 present+ 18:05:13 topic: https://github.com/WICG/open-ui/issues/296 18:05:26 melanierichards: First topic is naming of the new popup element 18:05:55 melanierichards: we proposed a popup element, as discussed before, we have taken it to become an official OpenUI item. Some folks have said it doesn't make sense to them 18:06:04 melanierichards: it may imply directionality that is not always the case 18:06:15 melanierichards: so I wanted to do some bikeshedding, to think about what should we name this element 18:06:38 melanierichards: it should be generic enough so that it can cover all use cases, but also specific enough so that it doesn't get confused with other use cases or other parts of the web platform 18:06:50 davatron5000 has joined #openui 18:06:58 melanierichards: my preferences among what's not popup would be 'popover', that's my personal preference. 18:07:16 q? 18:07:18 q+ 18:07:34 masonf: is the issue with popup that it implies a direction? 18:07:44 masonf: like, up? 18:07:46 melanierichards: yes 18:07:53 q+ Is it called popup because of aria-haspopup? 18:07:59 q+ 18:08:06 melanierichards: it also didn't always make sense to people who didn't have English as their first language 18:08:07 q? 18:08:21 davatron5000: is it called popup for any reason, like that ARIA has aria-haspopup? 18:08:28 melanierichards: it seemed most logical to the proposers 18:08:48 melanierichards: interesting that you bring that up, it could be a reason to keep popup 18:08:51 q- masonf 18:08:56 q- davatron 18:09:00 q+ 18:09:14 bkardell_: I'd say that is a strong argument for keeping popup, if, and only if, popup is like aria-haspopup 18:09:30 https://adrianroselli.com/2020/03/stop-using-drop-down.html 18:09:54 Francis_Storr: Adrian Roselli wrote a blog post that went through 'popup' andwhy some things shouldn't be called popup if they aren't popups 18:10:16 https://www.irccloud.com/pastebin/azncHB2Z/ 18:10:37 masonf: we're trying not to invent new things… popups on web pages are pretty common as well 18:10:40 tantek has joined #openui 18:10:59 q+ 18:11:10 melanierichards: sounds like there are a few folks that would like to preserve the name as is… are there others who feel there are other reasons why we shoudl or should not use popup? 18:11:17 q- masonf 18:11:40 joseph: the thing with popup is that the word is used for many other things 18:11:56 present+ 18:11:57 s/joseph/silverdust 18:12:12 q+ 18:12:12 silverdust: so I think popover is better 18:13:05 also pop-under windows are a known nasty anti-pattern of advertising windows 18:13:11 Francis_Storr: I like popover, it works better for me because it does go over other things 18:13:14 since we're brainstorming pop-* terms 18:13:18 q? 18:13:19 q? 18:13:24 melanierichards: just to say, yes, it would go over everthing else 18:13:26 q- silverdust 18:13:31 ack bkardell_ 18:13:53 here's one... 18:14:06 bkardell_: I said earlier about 'if it is like the ARIA thing', but I looked it up and it does not seem to be the case, popup does not match the aria-haspopup 18:14:41 bkardell_: how inherently tied to 2021 is this? over time, different form factors and devices and experiments may change the assumptions we hav now 18:14:51 s/hav/have 18:15:21 bkardell_: it is top layer… but what is the thing you build with it? that would be the bigger question. Maybe on some other device it is not what we think now, the concept of top layer may be completely different 18:15:40 melanierichards: so basically it may not look like a popup, but still be top layer? 18:15:57 bkardell_: like with dialog, on some devices it would be the whole top layer 18:16:12 melanierichards: would using the term run into the same problem? 18:16:46 bkardell_: I think popup has this problem, and I feel it's not a great choice for that reason… I don't think popover has it 18:16:52 q? 18:16:55 q+ to note the select vs popup, semantic vs presentational challenge 18:17:08 masonf: you mentioned this is not the same as aria-haspopup… can you explain? 18:17:33 bkardell_: in Adrian Roselli's piece, he lists a number of things that 'pop up' but are not referred to as popups 18:18:00 melanierichards: there are also things like listbox, that still may have aria-haspopup relationships 18:18:17 melanierichards: there may be an action for this group to go over this a bit more 18:18:18 q? 18:18:44 ack tantek 18:18:44 tantek, you wanted to note the select vs popup, semantic vs presentational challenge 18:19:45 tantek: one of the challenges around popup… there is conflation of the semantics and the presentation… for instance, as soon as you went to mobile, popups didn't behave like popups… it's this notion of 'choose one control' vs 'choose multiple control'…  18:20:26 https://open-ui.org/components/popup.research.explainer/ 18:20:28 tantek: are we standardising one specific presentation of a popup… or are we standardising semantics with multiple potential presentations? 18:20:45 tbh "transient user interface (UI)" is a good explanation in the explainer 18:20:55 melanierichards: in the explainer, we say, the popup component is a foundational component that other components can build on top of 18:21:07 got it 18:21:22 melanierichards: it doesn't lock you into a specific presentation 18:22:03 I have a demo of how a browser may implement the popover for mobile https://lqcoj.csb.app/ 18:22:12 melanierichards: for instance, in some cases of it you may want multiple, like multiple listboxes, some you may not. Best to think of this component in terms of the behaviors we have defined, like light dismiss, rather than one specific use case 18:22:48 tantek: the big semantic distinction in listboxes is 'choose one' vs 'choose multiple' , there are many ways you could display this 18:23:03 tantek: so that's the kind of abstractions we've historically tried to explore 18:24:07 tantek: maybe people think popup, but they actually think 'choose one', they may not know about different ways to show it 18:25:05 tantek: do we want to be specific about possible presentations? looks like there are two dials: first is choose one / choose multiple semantic, the second the presentation of it 18:25:34 masonf: it sounds like the comments are more about the select proposal… I agree with the comments 18:26:02 masonf: popup would be more general purpose, so it is transient and pops up to the user, and it can be used to build choose one / choose many type of controls 18:26:40 bkardell_: it still applies I think… tantek is making a similar point to the point I made 18:27:15 bkardell_: a lot of existing systems will be popup-like, but it may not be like that on all possible systems 18:27:51 tantek: I got confused by the examples I saw first 18:27:57 masonf: illustrates the need to pick a good name 18:28:08 q? 18:28:14 tantek: also good to think about what this means in contexts like audio 18:28:42 and mobile, where there's a slide right to a "nested" state that needs to be resolved before going back to the previous state 18:28:58 melanierichards: we can explore this a bit more. There is a popup research PR that thinks about different use cases 18:29:16 melanierichards: maybe we need to resolve on the use cases, then get back to the element naming 18:30:02 melanierichards: we didn't want to flood the platform and create elements for all the possible use cases 18:30:03 popup *might*be totally fine, even in the case I described 18:30:18 q? 18:30:31 melanierichards: let's wrap here and go to the next. Action for us is to go back to the research 18:30:38 popover does nicely distinguish it from the overloaded "popup" term 18:30:42 action: melanierichards bring back up the research PR 18:30:54 topic: https://github.com/WICG/open-ui/issues/311 18:30:59 ugh, I *meant* to say popover might be totally fine :-p 18:31:31 melanierichards: masonf is working through building a prototype of popup in Chromium and wondered if the 'open' attribute is truly a blocker for this element 18:32:05 melanierichards: the 'open' attribute effectively can allow a developer to mark a popup as open, without requiring some invoking element, like an element that you want open on page load 18:32:28 melanierichards: we got some feedback early on… that it is important that it is declarative, i.e. does not require JavaScript 18:32:38 melanierichards: so the open attribute is part of that 18:32:59 q+ 18:33:05 melanierichards: I wanted to discuss today: is this element relevant for developers? 18:33:06 q+ 18:33:14 masonf: what Melanie said 18:33:30 q+ 18:33:42 q+ 18:33:47 masonf: I wonder what the use cases are… I understand 'open on page load', but it would be only a one line of JavaScript to do it… is it worth the complexity? 18:34:08 s/complexity?/complexity required to make it work declaratively? 18:34:26 masonf: I've also heard about the open attribute in dialog, it does not always seem to work well 18:34:35 q- flackr 18:34:55 flackr: there may be other components that have a more obvious use case for the 'open' attribute 18:34:59 https://jsbin.com/leyosok/edit?html,js,output 18:35:08 flackr: I was just putting together a demo with radio buttons 18:35:38 flackr: I wonder if the attribute could set an initial state, but it is not live…  18:36:04 masonf: it would simplify all of the complexity 18:36:05 defaultOpen 18:36:19 flackr: my argument is that this is already the case with some input elements 18:36:27 masonf: right, but they have been around for a long time 18:37:17 silverdust: I think 'open' may clash with dismissal… when I open the webpage, some code may run before I encounter the element with the 'open' attribute 18:37:48 silverdust: when dismissable set to false, the popup would not have light dismiss behavior, so it may be easier to use open attribute on popups that don't have the light dismiss behavior 18:38:07 masonf: one of the key differences between dialog and popup is light dismiss, so it may be a better fit for your use case 18:38:26 masonf: I almost want 'transient' to be in the name of the popup element… that is really the key difference 18:38:30 ttui 18:38:35 q+ 18:38:36 q+ 18:38:37 q? 18:38:42 q- silverdust 18:38:42 melanierichards: 18:39:18 bkardell_: dialog was not shipped to three major engines… way more common is /
, which also has an open attribute 18:40:02 bkardell_: there is some frustration that it is locked in to a specific representation that is bound to its specific concept. It does progressive disclosure, but not all use cases are the use case that matches its presentation 18:41:05 bkardell_: my other comment is… I like the idea that flackr said, as long as we change the name. (Because we can't have an attribute that is one multiple elements, but doesn't do the same thing.) 18:41:25 q? 18:41:31 q- bkardell_ 18:41:34 bkardell_: I would be in favour of an attribute that lets you declaritively set an initial state, not reflectively and not called 'open' 18:41:39 q- davatron5000 18:41:45 q- davatron 18:41:57 davatron5000: I like 'open', in the same way that I like 'hidden', I like the binary flip of it, from a developer perspective 18:42:04 you can do that on the DOM API tho dave 18:42:50 the DOM API IDL can can an open boolean, it just doesn't reflect to a live attrbute called open 18:42:54 q+ to note the searchability (find in browser) aspect we missed with HIDDEN and with the summary/details interaction, that makes this at least a tri-state rather than a binary 18:43:12 davatron5000: what's nice about hidden that I can transition it 18:43:23 +1 tantek 18:43:25 :) 18:44:06 davatron5000: I like to be able to use the DOM IDL, things like element.open = !open 18:44:46 melanierichards: one thing I didn't mention, another use case for it to be an attribute is that it can be used as a style hook 18:45:23 bkardell_: the implementation of hidden is a UA style rule… so you can make its behavior be something else than hidden. But you can't do that with a summary/details 18:45:50 q? 18:45:59 q- Francis_Storr 18:46:05 masonf: that's the same with popup, if it is closed, it is not there, you won't be able to do anything with it, so styling popup[open] would be the same as popup 18:46:27 https://www.w3.org/TR/wai-aria-1.2/#dialog 18:46:40 Francis_Storr: ARIA has had the concept of a non-modal dialog, but it's never really gotten further than that word 'non-modal dialog'. It is a descendant window of a primary window 18:46:50 good pointer Francis 18:47:06 ack dandclark 18:47:10 q- dandclark 18:47:58 dandclark: another use case for an IDL property… a compound control that uses a popup, like a custom select elements… when it is open I may want to check that in script, or do something based on timing. 18:48:05 thanks @tantek :) 18:48:28 dandclark: the proposal has a 'hide' event, maybe we would also need a 'show' event, but if not done right I worry I would get out of sync 18:48:46 dandclark: having an IDL attribute I could look at would help with that 18:49:03 q? 18:49:14 masonf: I should have made it clearer, I was not suggesting in my issues we're not thinking of removing the IDL attribute, it was just about the content attribute 18:50:00 also for some components, just linking to content inside 18:50:41 tantek: we had some challenges with hidden states. There are pages that use summary/details or constructs similar to that, like GitHub… you want to do things like find all such elements in a page and then open them all. It is hard to tell up front whether a use of summary/details is one where that behavior would be useful or not 18:51:04 masonf: so I gave the point I raised some extra thought and I think by saying having to not have light dismiss I meant the light dismissal from visiting a different tab, resizing the browser, not clicking outside the popover 18:51:11 tantek: it would be useful for that to have some way for a developer to declare whether their element is 'findable' 18:51:15 Wish I could've articulated that better 18:51:37 notes that linking to content inside as a solution could be declarative and work for melanie's use case 18:51:42 tantek: sometimes elements may need to be hidden but also findable 18:52:44 melanierichards: thanks everyone! 18:52:55 there may be a WHATWG HTML issue open re: summary/details and findable, and hidden=findable, though I'd have to do some digging to find them (so to speak) 18:52:56 thank you hdv for scribing! 18:53:31 tantek: we do this thing on the WAI website! (https://www.w3.org/WAI/teach-advocate/accessible-presentations/ 'Expand all sections') 18:53:33 rrsagent, make minutes 18:53:33 I have made the request to generate https://www.w3.org/2021/04/08-openui-minutes.html melanierichards 18:53:39 zakim, please part 18:53:39 leaving. As of this point the attendees have been masonf, melanierichards, hdv, dandclark, Francis_Storr, silverdust, flackr, miriam, bkardell_, tantek 18:53:39 Zakim has left #openui 20:07:20 FYI melanierichards that last statement in the minutes should be attributed to hdv, not me :) 20:07:44 https://www.w3.org/2021/04/08-openui-minutes.html#x186 20:08:21 I'm not sure how to tell RRSAgent to change the attribution of a statement 21:04:03 myles has joined #openui 22:01:36 myles has joined #openui 23:03:43 silverdust has joined #openui 23:40:19 ah shoot, I don't either. gregwhitworth do you know how to fix? (can we, after they've been generated?) 23:58:41 melanierichards: nope - no idea 23:59:06 we can re-gen them but it gathers between the meeting sections which I think is the issue here