Intent to Experiment: The Pop-Up API

598 views
Skip to first unread message

Mason Freed

unread,
Aug 3, 2022, 2:18:36 PM8/3/22
to blink-dev

Contact emails

mas...@chromium.org

Explainer

https://open-ui.org/components/popup.research.explainer

Specification



Summary

An API that can be used to build transient user interface (UI) elements that are displayed on top of all other web app UI. These include user-interactive elements like action menus, form element suggestions, content pickers, and teaching UI. This API uses a new `popup` content attribute to enable any element to be displayed in the top layer. This is similar to the <dialog> element, but has several important differences, including light-dismiss behavior, pop-up interaction management, animation and event support, and the lack of a "modal" mode.



Blink component

Blink>HTML>Popup

TAG review

https://github.com/w3ctag/design-reviews/issues/743

TAG review status

Pending

Risks



Interoperability and Compatibility



Gecko: No signal

WebKit: No signal

Web developers: No signals

Other signals:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?



Goals for experimentation

Validation of the shape and ergonomics of the overall pop-up API. Feedback should include use cases that do not work well (or that do work particularly well), performance issues, etc. Ideally, use cases should include as much of the API as possible, including multiple pop-up types (auto, hint, manual), nested pop-ups, declarative and imperative pop-up invocation, etc.



Reason this experiment is being extended



Ongoing technical constraints

None



Debuggability

A feature has been added to devtools which shows all of the elements that are currently in the top layer, plus annotations of those elements in the Elements tree. Elements that use the pop-up API will be shown with this feature.



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

Yes

Is this feature fully tested by web-platform-tests?

Yes

Flag name

#enable-experimental-web-platform-features

Requires code in //chrome?

False

Tracking bug

https://crbug.com/1307772

Estimated milestones

OriginTrial desktop last110
OriginTrial desktop first106
OriginTrial Android last110
OriginTrial Android first106
OriginTrial webView last110
OriginTrial webView first106


Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5463833265045504

Links to previous Intent discussions

Intent to prototype: https://groups.google.com/a/chromium.org/g/blink-dev/c/9y-Thg9UCxY/m/_4gShWjQAAAJ


This intent message was generated by Chrome Platform Status.

Yoav Weiss

unread,
Aug 3, 2022, 4:04:19 PM8/3/22
to Mason Freed, Una Kravets, Nicole Sullivan, blink-dev
LGTM to experiment M106 to M110 inclusive.

This is super exciting! Thanks for working on this!!

On Wed, Aug 3, 2022 at 8:18 PM Mason Freed <mas...@chromium.org> wrote:

Contact emails

mas...@chromium.org

Explainer

https://open-ui.org/components/popup.research.explainer

Specification



Summary

An API that can be used to build transient user interface (UI) elements that are displayed on top of all other web app UI. These include user-interactive elements like action menus, form element suggestions, content pickers, and teaching UI. This API uses a new `popup` content attribute to enable any element to be displayed in the top layer. This is similar to the <dialog> element, but has several important differences, including light-dismiss behavior, pop-up interaction management, animation and event support, and the lack of a "modal" mode.



Blink component

Blink>HTML>Popup

TAG review

https://github.com/w3ctag/design-reviews/issues/743

TAG review status

Pending

Risks



Interoperability and Compatibility



Gecko: No signal

WebKit: No signal

Worthwhile to ask?
 

Web developers: No signals

+Una Kravets & +Nicole Sullivan may be able to help with gathering such signals :)

--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM%3DNeDjJOC2%2B5aHfAoN8wOx8T0gtm%3D-o6eNK5XD6Ps5iRet6zA%40mail.gmail.com.

Mason Freed

unread,
Aug 4, 2022, 7:09:04 PM8/4/22
to Yoav Weiss, Una Kravets, Nicole Sullivan, blink-dev
On Wed, Aug 3, 2022 at 1:04 PM Yoav Weiss <yoav...@chromium.org> wrote:
LGTM to experiment M106 to M110 inclusive.

This is super exciting! Thanks for working on this!!

Thanks!
 

Interoperability and Compatibility



Gecko: No signal

WebKit: No signal

Worthwhile to ask? 

Definitely worthwhile. I've been discussing it with them informally, but I suspect we'll get more discussion once we put up a spec PR. That's underway now.
 
 

Web developers: No signals

+Una Kravets & +Nicole Sullivan may be able to help with gathering such signals :)

Agreed!
Reply all
Reply to author
Forward
0 new messages