-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HTMLPopupElement #680
Comments
The lack of clarity about what this element is, semantically, remains. That is, is this for tooltips, menus, toasts? All of them? I've raised this a number of times but the only open issue I can find in https://github.com/openui/open-ui/labels/popup on it is maybe openui/open-ui#329 . The fact that the draft specification uses Apart from that major issue, I worry that there are 31 open issues in https://github.com/openui/open-ui/labels/popup ... some triage would help give a more accurate picture of how mature the proposal and spec is, I think. |
@domenic thanks for the comments.
So the explainer talks about this in the first few paragraphs, but let me try to consisely answer your question: A
So that does not include several of the UI elements you listed. See this section of the explainer, which explicitly lists several such controls such as toasts.
I'm open to suggestions here. Perhaps a
Totally valid point. I've been meaning to go through those and address them. Thanks for the ping. |
That doesn't really help. Those are behaviors, not semantics or types of controls. (I.e. the things that feed into roles.) Below you propose that the role should be dialog. That implies that instead of being a new element, this should be some sort of mode of the dialog element, since the dialog element already occupies the semantic space of dialogs. (E.g.,
No, this isn't correct. The dialog element can only be used for dialogs. Tooltips or toasts should be done using We need to figure out what the similar semantic space, and corresponding role, is for popup. The explainer example seems to give several types of controls: menus, form element suggestions, content pickers, and teaching UI. What is the ARIA role for each of these? Perhaps each should have a separate element, not I apologize that this is rather fundamental criticism, but I do feel like I've raised it repeatedly since the beginning of this endeavor, without much response. I appreciate getting some concrete engagement at this point. |
So we both understand that Having said that, I'm not disagreeing with the idea that we should make this semantically as clear and accessible as possible. I'm open to concrete proposals about how to do that.
No problem on the criticism - I'd like to get to a good solution here. I apologize that I don't think I realized this was "fundamental" - it sounds like you'd object to a general purpose I filed openui/open-ui#410 to discuss this issue further. Also happy to continue the discussion here. |
Yeah, that would be one approach. Or It's also worth considering how to map accessibility roles to use cases, e.g. the explainer's menus, form element suggestions, content pickers, and teaching UI. It's not clear to me whether a teaching UI is one of the three you listed (tooltip, listbox, menu), for example... And again I'll reiterate that it's a bit surprising that those three exact behaviors (and no further behaviors) perfectly encapsulate what developers want for menus, listboxes, tooltips, teaching UIs, content pickers, and form element suggestions. E.g. at least on every operating system I'm familiar with menus and tooltips have very different focus behaviors, if nothing else. |
These are very good points - there will definitely be some behavioral differences among these element types. I wasn't saying all of these elements would behave the same, I was saying that they (might?) all share the three "basic" behaviors with Let's continue the discussion within the issue - there will likely be more people who can weigh in. |
I want to echo @domenic's point about the semantics of <popup>. In general, this feels more like an abstract base class for popup-type elements than a concrete element in itself. (I'm also not a fan of <popup type="...">, I don't think <input> elements set a precedent we want to follow.) But this leads me to a larger question of what the OpenUI group is trying to achieve. If you're trying to make high-level, semantic elements that can be styled, then <popup> isn't the right approach, you should be focusing on the specific types of popup elements you want. However, if OpenUI is trying to make generic UI building blocks that WC authors can use to compose custom UI elements (or can be used to explain behavior of existing elements), then a set of functional-but-not-semantic elements starts to make sense. But looking at the set of elements OpenUI is considering, it's not clear that either approach is being deliberately taken. What I don't want to see is a half-and-half ad-hoc approach. Either focus entirely on high-level semantic elements, or deliberately choose a layered approach and create a new class of functional-only elements that are not meant to be used stand-alone, and then create high-level semantic elements that can be explained in terms of the generic building blocks (and polyfilled using them). |
@plinss thanks for the comments. Have you seen the research page for |
There is precedent in the Web Platform for having an abstract base class that contains shared API, and subclasses that correspond to specific tag names: |
Indeed, and should that base class also be the base class of |
It's not an either/or, if There are also certain behaviors here that I wonder if they might be more appropriate as global HTML attributes. E.g. |
Hi everybody! Thank you for your patience as we've taken a while to get back to you on this one. Special thanks to @domenic for his thorough review of this feature. We're happy to see that there's been a bunch of productive conversation on this here and in various OpenUI issues. It sounds like the direction you expect this to go in is pretty different from what the current documents describe. We'd like to hold off on reviewing until you've updated the documents to match the current understanding. Please let us know when to revisit this! |
Braw mornin' TAG! (That's a new one for me 😄 )
I'm requesting a TAG review of the
<popup>
element. This is effectively a re-opening of the previously requested TAG review for this feature.That review was closed, waiting for the proposed "Anchor Positioning" feature to be available for review. Please see this comment on the old review, linking to the explainer for Anchor Positioning, plus some additional context. Essentially, the Anchor Positioning feature now has an explainer and a significant amount of brainstorming is happening around the shape of the API. From those links you should be able to get a sense for what will be possible, positioning-wise, for
<popup>
. And hopefully that's enough to re-open and continue the TAG review for<popup>
. In the time since the last TAG review, a draft specification has been written and reviewed by editors of the WHATWG HTML spec. And a prototype implementation in Chromium is basically complete. Several of the comments on the prior TAG review lead to changes that have been made in the spec and implementation, e.g. the addition of aninitiallyopen
attribute to declaratively open the popup.Further details:
You should also know that...
I appreciate the TAG. 👍
We'd prefer the TAG provide feedback as (please delete all but the desired option):
💬 leave review feedback as a comment in this issue and @-notify @mfreed7
The text was updated successfully, but these errors were encountered: