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.
TAG review statusPending
Interoperability and CompatibilityGecko
: No signalWebKit
: No signalWeb developers
: No signalsOther 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
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)?YesYes
Requires code in //chrome?False
|OriginTrial desktop last||110|
|OriginTrial desktop first||106|
|OriginTrial Android last||110|
|OriginTrial Android first||106|
|OriginTrial webView last||110|
|OriginTrial webView first||106|
Link to entry on the Chrome Platform Statushttps://chromestatus.com/feature/5463833265045504
Links to previous Intent discussionsIntent to prototype: https://groups.google.com/a/chromium.org/g/blink-dev/c/9y-Thg9UCxY/m/_4gShWjQAAAJ