Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New web app manifest features #2078

Merged
merged 18 commits into from
Nov 21, 2024
Merged
Show file tree
Hide file tree
Changes from 15 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions features/app-file-handlers.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: File handlers
description: The `file_handlers` web app manifest member registers an installed web app as a handler for files with specific file extensions or MIME types.
spec: https://wicg.github.io/manifest-incubations/#file_handlers-member
group: progressive-web-app
compat_features:
- html.manifest.file_handlers
- api.LaunchParams.files
11 changes: 11 additions & 0 deletions features/app-file-handlers.yml.dist
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Generated from: app-file-handlers.yml
# Do not edit this file by hand. Edit the source file instead!

status:
baseline: false
support:
chrome: "102"
edge: "102"
compat_features:
- api.LaunchParams.files
- html.manifest.file_handlers
8 changes: 8 additions & 0 deletions features/app-protocol-handlers.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
name: Protocol handlers
description: The `protocol_handlers` web app manifest member registers an installed web app as a handler for a specific protocol. When a user follows a link with the specified protocol, the installed app opens the link.
spec: https://wicg.github.io/manifest-incubations/#protocol_handlers-member
group: progressive-web-app
compat_features:
- html.manifest.protocol_handlers
- html.manifest.protocol_handlers.protocol
- html.manifest.protocol_handlers.url
13 changes: 13 additions & 0 deletions features/app-protocol-handlers.yml.dist
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Generated from: app-protocol-handlers.yml
# Do not edit this file by hand. Edit the source file instead!

status:
baseline: false
support:
chrome: "96"
chrome_android: "96"
edge: "96"
compat_features:
- html.manifest.protocol_handlers
- html.manifest.protocol_handlers.protocol
- html.manifest.protocol_handlers.url
6 changes: 6 additions & 0 deletions features/app-share-target.yml
captainbrosset marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
name: Share targets
description: The `share_target` web app manifest member registers an installed web app as a handler for shared content. When a user shares content by using the device share dialog, the installed app can be listed as an option for handling the shared content.
spec: https://w3c.github.io/web-share-target/#share_target-member
group: progressive-web-app
compat_features:
- html.manifest.share_target
11 changes: 11 additions & 0 deletions features/app-share-target.yml.dist
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Generated from: app-share-target.yml
# Do not edit this file by hand. Edit the source file instead!

status:
baseline: false
support:
chrome: "89"
chrome_android: "76"
edge: "89"
compat_features:
- html.manifest.share_target
6 changes: 6 additions & 0 deletions features/app-shortcuts.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
name: Application shortcuts
description: The `shortcuts` web app manifest member registers common actions of an installed web app with the device. The device can present these actions to the user in contextually appropriate locations, such as jump lists on Windows or the app launcher on Android.
spec: https://w3c.github.io/manifest/#shortcuts-member
group: progressive-web-app
compat_features:
- html.manifest.shortcuts
12 changes: 12 additions & 0 deletions features/app-shortcuts.yml.dist
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Generated from: app-shortcuts.yml
# Do not edit this file by hand. Edit the source file instead!

status:
baseline: false
support:
chrome: "96"
chrome_android: "84"
edge: "96"
safari: "17.4"
compat_features:
- html.manifest.shortcuts
51 changes: 51 additions & 0 deletions features/manifest.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Web app manifest
description: A web app manifest file provides metadata about the site. The browser can use the metadata to install the site as a standalone application on the user's device. The metadata usually includes the app's name, icon, description, and ways in which the app wishes to integrate with the device.
spec: https://w3c.github.io/manifest/
group: progressive-web-app
status:
compute_from:
- html.elements.link.rel.manifest
- html.manifest.display
- html.manifest.name
- html.manifest.short_name
- html.manifest.start_url
- html.manifest.icons
- html.manifest.theme_color
- html.manifest.scope
compat_features:
- html.elements.link.rel.manifest

# While not all display modes are supported in all browsers, the display member itself
# is supported, and very important on Safari iOS. On Safari iOS, using the default
# display mode is not enough to really "install" an app to the home screen. For example
# notifications won't work.
- html.manifest.display

- html.manifest.name
- html.manifest.short_name
- html.manifest.start_url
- html.manifest.icons
- html.manifest.theme_color
- html.manifest.scope

# Missing in Firefox for Android. Not considered a developer feature yet.
# Ignored from compute_from for now.
- html.manifest.id

# Missing in Safari. While interesting separate features we can create
# them later.
# Ignored from compute_from for now.
- html.manifest.background_color
- html.manifest.orientation

# Description is only used in Chromium in the PWA rich install dialog.
# Ignored from compute_from for now.
- html.manifest.description

# Used to install a web payment service worker on the fly, which is
# a separate feature.
# Ignored from compute_from for now.
- html.manifest.serviceworker
- html.manifest.serviceworker.scope
- html.manifest.serviceworker.src
- html.manifest.serviceworker.use_cache
captainbrosset marked this conversation as resolved.
Show resolved Hide resolved
116 changes: 116 additions & 0 deletions features/manifest.yml.dist
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
# Generated from: manifest.yml
# Do not edit this file by hand. Edit the source file instead!

status:
baseline: false
support:
chrome: "53"
chrome_android: "53"
edge: "79"
firefox_android: "79"
safari: "17"
safari_ios: "15.4"
compat_features:
# baseline: false
# support:
# chrome: "39"
# chrome_android: "39"
# edge: "79"
# firefox_android: "47"
# safari: "17"
# safari_ios: "11.3"
- html.manifest.display

# baseline: false
# support:
# chrome: "39"
# chrome_android: "39"
# edge: "79"
# firefox_android: "58"
# safari: "17"
# safari_ios: "11.3"
- html.elements.link.rel.manifest

# baseline: false
# support:
# chrome: "39"
# chrome_android: "39"
# edge: "79"
# firefox_android: "79"
# safari: "17"
# safari_ios: "11.3"
- html.manifest.name
- html.manifest.short_name
- html.manifest.start_url

# baseline: false
# support:
# chrome: "39"
# chrome_android: "39"
# edge: "79"
# firefox_android: "79"
# safari: "17"
# safari_ios: "15.4"
- html.manifest.icons

# baseline: false
# support:
# chrome: "46"
# chrome_android: "46"
# edge: "79"
# firefox_android: "79"
# safari: "17"
# safari_ios: "15"
- html.manifest.theme_color

# baseline: false
# support:
# chrome: "53"
# chrome_android: "53"
# edge: "79"
# firefox_android: "79"
# safari: "17"
# safari_ios: "11.3"
- html.manifest.scope

# baseline: false
# support:
# chrome: "96"
# chrome_android: "96"
# edge: "96"
# safari: "17"
# safari_ios: "16.4"
- html.manifest.id

# baseline: false
# support:
# chrome: "39"
# chrome_android: "39"
# edge: "79"
# firefox_android: "79"
- html.manifest.orientation

# baseline: false
# support:
# chrome: "46"
# chrome_android: "46"
# edge: "79"
# firefox_android: "79"
- html.manifest.background_color

# baseline: false
# support:
# chrome: "70"
# chrome_android: "70"
# edge: "79"
- html.manifest.serviceworker
- html.manifest.serviceworker.scope
- html.manifest.serviceworker.src
- html.manifest.serviceworker.use_cache

# baseline: false
# support:
# chrome: "88"
# chrome_android: "88"
# edge: "88"
- html.manifest.description