Intent to Prototype: Declarative Link Capturing for PWAs

169 views
Skip to first unread message

Matt Giuca

unread,
Dec 14, 2020, 1:09:44 AM12/14/20
to blink-dev, Matt Giuca, Alan Cutter, Chase Phillips

Contact emails

mgi...@chromium.orgalanc...@chromium.orgc...@chromium.org

Explainer


https://github.com/WICG/sw-launch/blob/master/declarative_link_capturing.md

Specification

None

Summary

New Web App Manifest members to control what happens when the user navigates to a page within scope of an installed web app. This feature introduces the "capture_links" member, an enumeration allowing the customization of link capturing behaviour, allowing sites to: - Automatically open a new PWA window when the user clicks a link to their app. - Have a "single window mode" like mobile apps.



Blink component

UI>Browser>WebAppInstalls

Motivation

After a user installs a PWA, currently the only way to open that PWA in its standalone window is to launch it directly from the system launcher, or use hard-to-discover Chrome menus to "pop out" web pages into the installed app. Site developers commonly request the ability for when the user clicks a link into their (already installed) app's scope, it automatically opens the app window. This mirrors the behaviour of apps on mobile which do this automatically. Site developers also frequently request the ability to, by default, focus an existing instance of the app rather than opening a new one. For example, a music player app doesn't make sense to open a second instance.


TAG review

None

TAG review status

Pending

Risks



Interoperability and Compatibility

Very small, since any browser not implementing this will just fall back to the standard behaviour, which is to navigate to links in a browser tab. The design presents a forwards compatibility risk, which is that any new modes added after the initial release would not be supported on earlier browsers, forcing developers to break older browsers if they want to use newer modes (similar to what happened with "display"). We can work around this by accepting a fallback list.



Gecko: No signal

WebKit: No signal

Web developers: No signals


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

No

Link to entry on the Chrome Platform Status

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

This intent message was generated by Chrome Platform Status.

yo...@yoav.ws

unread,
Dec 15, 2020, 2:03:08 AM12/15/20
to blink-dev, Matt Giuca, Alan Cutter, Chase Phillips
On Monday, December 14, 2020 at 7:09:44 AM UTC+1 Matt Giuca wrote:

Contact emails

mgi...@chromium.orgalanc...@chromium.orgc...@chromium.org

Explainer


https://github.com/WICG/sw-launch/blob/master/declarative_link_capturing.md

Specification

None

Summary

New Web App Manifest members to control what happens when the user navigates to a page within scope of an installed web app. This feature introduces the "capture_links" member, an enumeration allowing the customization of link capturing behaviour, allowing sites to: - Automatically open a new PWA window when the user clicks a link to their app. - Have a "single window mode" like mobile apps.



Blink component

UI>Browser>WebAppInstalls

Motivation

After a user installs a PWA, currently the only way to open that PWA in its standalone window is to launch it directly from the system launcher, or use hard-to-discover Chrome menus to "pop out" web pages into the installed app. Site developers commonly request the ability for when the user clicks a link into their (already installed) app's scope, it automatically opens the app window. This mirrors the behaviour of apps on mobile which do this automatically. Site developers also frequently request the ability to, by default, focus an existing instance of the app rather than opening a new one. For example, a music player app doesn't make sense to open a second instance.


TAG review

None

Are you planning to file one?

Matt Giuca

unread,
Dec 16, 2020, 10:56:39 PM12/16/20
to yo...@yoav.ws, blink-dev, Alan Cutter, Chase Phillips
Reply all
Reply to author
Forward
0 new messages