Re: [w3ctag/design-reviews] HTMLPopupElement - <popup> (#680)

@domenic thanks for the comments.

> > Major unresolved issues with or opposition to this specification: None that I know of
> 
> 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](https://github.com/openui/open-ui/issues/329) .

So the [explainer](https://open-ui.org/components/popup.research.explainer) talks about this in the first few paragraphs, but let me try to consisely answer your question:

A `<popup>` is something that has these qualities:
1. It is painted on top of everything else (top layer).
2. It is ephemeral, and gets "light-dismissed" via several actions such as clicking outside the `<popup>`, scrolling the page, hitting ESC, etc.
3. Only one `<popup>`* can be visible at a time. (* nested popups are the exception to the one-at-a-time rule.)

So that does **not** include several of the UI elements you listed. See [this section of the explainer](https://open-ui.org/components/popup.research.explainer#addressing-all-top-layer-ui-elements), which explicitly lists several such controls such as toasts.

> The fact that the draft specification uses `role="menu"` in an example is an illustration of this big issue. We can't introduce new elements which require ARIA to function; [the first rule of ARIA is that ARIA should not be necessary](https://www.w3.org/TR/using-aria/#rule1) for features available natively in HTML.

I'm open to suggestions here. Perhaps a `<popup>` should use `role=dialog`. Both `<popup>`s and `<dialog>`s are general-purpose top-layer elements, and are perhaps close enough to each other to share a role? In general, the `<dialog>` element is already in a somewhat similar boat, no? I.e. a `<dialog>` can be used for a number of UI purposes, such as dialogs, tooltips, toasts, etc. But the platform uses `role=dialog` and it's up to the developer to specialize further with ARIA attributes if it is being used for a more-specific purpose such as a tooltip.


> 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.

Totally valid point. I've been meaning to go through those and address them. Thanks for the ping.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3ctag/design-reviews/issues/680#issuecomment-942811783

Received on Thursday, 14 October 2021 00:09:44 UTC