Intent to Implement: Navigation-controls media query

61 views
Skip to first unread message

Mustapha Jaber

unread,
Sep 12, 2019, 1:36:41 PM9/12/19
to blin...@chromium.org, Jason McConnell, John Jansen

Contact emails

mgi...@google.com,harr...@google.com,mus...@microsoft.com,joh...@microsoft.com

 

Explainer

https://github.com/fallaciousreasoning/backbutton-mediaquery/blob/master/explainer.md

 

Design docs/spec 

Specification: https://github.com/w3c/csswg-drafts/issues/4187

 

https://github.com/w3c/csswg-drafts/issues/4187

https://github.com/fallaciousreasoning/backbutton-mediaquery

 

TAG review

Pending completion of Intent to implement; will link once TAG review issue is filed.

 

Summary

Adding ‘navigation-controls’ media feature, which will initially be used to detect if the user agent supplies a back button present in its UI. This media feature will allow apps to avoid the "double back button" problem by letting them conditionally display a back button depending on whether the user agent is already displaying one. Adding a standard way to detect navigation controls like the back button and in future other navigation controls, means that we can avoid user-agent and viewport-size workarounds, which are not ideal for web compatibility. For extended background on motivations, please refer to explainer.

 

Motivation

This API will help us eliminate the "double back button" problem (seen here, on Twitters PWA in the Microsoft store). This problem arises because developers of "standalone", "fullscreen", and "minimal-ui" apps have no way of determining whether navigation controls will be provided by the user agent (the browser, OS, or hardware), and so, are forced to implement their own, to ensure that their app is functional without the browser's UI. 

 

Risks

Interoperability and Compatibility 

No expected interop or compat risk. 

 

Firefox: Public support (https://github.com/w3c/csswg-drafts/issues/4187#issuecomment-528132578

The CSSWG discussed the proposal and resolved to add it to MQ5 spec. 

 

Edge: Public support (https://github.com/w3c/csswg-drafts/issues/4187#issuecomment-528132578

The CSSWG discussed the proposal and resolved to add it to MQ5 spec. 

 

Safari: Public support (https://github.com/w3c/csswg-drafts/issues/4187#issuecomment-528132578

The CSSWG discussed the proposal and resolved to add it to MQ5 spec.

 

Web developers: No signals

 

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? 

Part of the implementations will be to add the relevant media query and property override tests.

 

Link to entry on the Chrome Platform Status

https://www.chromestatus.com/feature/5717537549451264

 

Thanks,

Mustapha

Reply all
Reply to author
Forward
0 new messages