forked from WICG/manifest-incubations
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathindex.html
184 lines (184 loc) · 6.5 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>
Manifest Incubations
</title>
<script src="https://www.w3.org/Tools/respec/respec-w3c" class=
"remove"></script>
<script class='remove'>
// See https://github.com/w3c/respec/wiki/ for how to configure ReSpec
var respecConfig = {
specStatus: "CG-DRAFT",
editors: [{
name: "Daniel Murphy"
}],
github: "WICG/manifest-incubations",
shortName: "manifest-incubations",
xref: {
specs: ["appmanifest"],
profile: "web-platform",
},
};
</script>
</head>
<body>
<section id="abstract">
<p>
Feature specifications for <a href=
"https://www.w3.org/TR/appmanifest/">Web Application Manifest</a>
extensions & incubations which Chromium has shipped but do not have
committments / implementations from other user agents. Instead of
keeping these features as explainers, they are documented more
officially here.
</p>
</section>
<section id="sotd">
<p>
This is an unofficial proposal.
</p>
</section>
<section>
<h2 data-dfn-for="">
<code>display_override</code> member
</h2>
<p>
For advanced usages, the display_override member can be used to specify
a custom fallback order of <a data-cite=
"appmanifest#dfn-display-modes-values">display mode values</a> for
developers to choose their prefered <a data-cite=
"appmanifest#dfn-display-mode">display mode</a>.
</p>
<p>
The <dfn>display_override</dfn> member of the <a data-cite=
"appmanifest#web-application-manifest">Web Application Manifest</a> is
a <a>sequence</a> of <a data-cite=
"appmanifest#dfn-display-modes-values">display mode values</a>. This
item represents the developer's preferred fallback chain for
<a data-cite="appmanifest#dfn-display-mode">display modes</a>. This
field overrides the <a data-cite="appmanifest#display">display</a>
property. If the user agent does not support any of the display modes
specified here, then it falls back to considering the <a data-cite=
"appmanifest#display">display</a> field. See <a data-cite=
"appmanifest#dfn-display-mode">display modes</a> for the algorithm
steps.
</p>
<p>
The following steps are added to the <a data-cite=
"appmanifest#dfn-extension-point">extension point</a> in <a data-cite=
"appmanifest#dfn-steps-for-determining-the-web-app-s-chosen-display-mode">
determining the web app's chosen display mode</a>:
</p>
<ol>
<li>[=list/For each=] |candidate_display_mode:DisplayModeType| of
|manifest|.{{display_override}}:
<ol>
<li>If the user agent supports the |candidate_display_mode|, then
return |candidate_display_mode|.
</li>
</ol>
</li>
</ol>
<p class="note">
This member is intended to be only used for advanced cases, where the
developer wants explicit control over the fallback order of their
display modes. Otherwise, the <a data-cite=
"appmanifest#display">display</a> should be sufficient for most use
cases.
</p>
<section class="informative">
<h3>
Usage Example
</h3>
<p>
The following shows a [=manifest=] that prefers the
<code>minimal-ui</code> <a data-cite=
"appmanifest#dfn-display-mode">display mode</a> over
<code>standalone</code>, but if <code>minimal-ui</code> isn't
supported, falls back to <code>standalone</code> as opposed to
<code>browser</code>.
</p>
<pre class="example json" title="Advanced display usage manifest">
{
"name": "Recipe Zone",
"description": "All of the recipes!",
"icons": [{
"src": "icon/hd_hi",
"sizes": "128x128"
}],
"start_url": "/index.html",
"display_override": ["minimal-ui"],
"display": "standalone",
"theme_color": "yellow",
"background_color": "red"
}
</pre>
</section>
</section>
<section>
<h2 data-dft-for="">
<code>share_target</code> member
</h2>
<p>
The `share_target` member registers a web application as "target" for
share actions (e.g., for sharing a text, a URL, or a file). The
`share_target` member is part of the <a href=
"https://wicg.github.io/web-share-target/">Web Share Target</a>
specification, being incubated at the <a href=
"https://wicg.io">WICG</a>.
</p>
</section>
<section>
<h2>
<code><dfn>note_taking</dfn></code> member
</h2>
<p>
The <code>note_taking</code> member of the <a data-cite=
"appmanifest#web-application-manifest">Web Application Manifest</a> is
an <a data-cite="appmanifest#dfn-object">object</a> that contains
information related to note-taking. It has the following members:
</p>
<ul>
<li>[=note_taking/new_note_url=]
</li>
</ul>
<section>
<h3>
<code><dfn data-dfn-for="note_taking">new_note_url</dfn></code> member
</h3>
<p>
The [=note_taking=] <code>new_note_url</code> member is a <a>URL</a>
[=manifest/within scope=] of the manifest, to open when the user
wants to take a new note using the web application (e.g., from an
operating system shortcut icon or keyboard shortcut). Defining this
member indicates that the web application is a note-taking
application.
</p>
</section>
<section class="informative">
<h3>
Usage Example
</h3>
<p>
The following shows a [=manifest=] for a note-taking application.
</p>
<pre class="example json" title="Note-taking application">
{
"name": "My Note Taking App",
"description": "You can take notes!",
"icons": [{
"src": "icon/hd_hi",
"sizes": "128x128"
}],
"start_url": "/index.html",
"display": "standalone",
"note_taking": {
"new_note_url": "/new_note.html"
}
}
</pre>
</section>
</section>
</body>
</html>