Adds a new advanced field to the web manifest, "display_override", where a developer with special requirements can specify an explicit display fallback chain they would like applied. Here's an example of a website that wants "minimal-ui" to fall back to "standalone". { "display": "standalone", "display_override": ["minimal-ui"], } Note: This API is only intended to be used for advanced use cases & display modes only. Most developers will only need to use the "display" property.


The way the "display" field works is inflexible and has the following problems: 1: The fallback chain is inflexible. For example, a developer cannot request "minimal-ui" without being forced to fall back to "browser" if that display mode is not supported. This basically means that it is no longer a PWA. 2: Forces display modes on developers that they don't want. For example, if a developer does NOT want a specific display mode, especially if new modes are added, there is no way to have the browser NOT fallback to it if the requested mode is not supported. This is especially applicable for new display mode - if a developer want fullscreen, and tabbed is introduced after fullscreen in the display mode list, they must support a tabbed display mode, even if they don't want it. 3: As mentioned in 2, new APIs proposals like tabbed mode [1] and Window Control Overlay [2] [3] don't fit well in the existing list, and are thus blocked on us improving the API functionality here. Please see the explainer [4] for more information here. [1]: [2]: [3]: [4]:



Specification link

Specification being incubated in a Community Group

Status in Chromium


Enabled by default (tracking bug)

Consensus & Standardization

After a feature ships in Chrome, the values listed here are not guaranteed to be up to date.


Intent to Prototype url

Intent to Prototype thread

Search tags

display, display-override, display-option,

Last updated on 2021-12-13