134
134
}
135
135
</ style >
136
136
</ head >
137
- < body data-cite ="ENCODING ">
137
+ < body data-cite ="ENCODING SCREEN-ORIENTATION ">
138
138
< section id ='abstract '>
139
139
< p >
140
140
This specification defines a JSON-based manifest file that provides
141
141
developers with a centralized place to put metadata associated with a
142
142
web application. This metadata includes, but is not limited to, the web
143
143
application's name, links to icons, as well as the preferred URL to
144
144
open when a user launches the web application. The manifest also allows
145
- developers to declare a default orientation for their web application,
146
- as well as providing the ability to set the display mode for the
147
- application (e.g., in fullscreen). Additionally, the manifest allows a
148
- developer to "scope" a web application to a URL. This restricts the
149
- URLs to which the manifest is applied and provides a means to "deep
150
- link" into a web application from other applications.
145
+ developers to declare a default screen orientation for their web
146
+ application, as well as providing the ability to set the display mode
147
+ for the application (e.g., in fullscreen). Additionally, the manifest
148
+ allows a developer to "scope" a web application to a URL. This
149
+ restricts the URLs to which the manifest is applied and provides a
150
+ means to "deep link" into a web application from other applications.
151
151
</ p >
152
152
< p >
153
153
Using this metadata, user agents can provide developers with means to
852
852
navigation scope will be < code > /pages/</ code > .
853
853
</ p >
854
854
< p >
855
- Developers should take care, if they rely on the default behaviour ,
855
+ Developers should take care, if they rely on the default behavior ,
856
856
that all of the application's page URLs begin with the parent path of
857
857
the start URL. To be safe, explicitly specify < a > scope</ a > .
858
858
</ p >
@@ -1356,9 +1356,10 @@ <h3>
1356
1356
< li > If < var > manifest link</ var > 's < code > href</ code > attribute's value
1357
1357
is the empty < a > string</ a > , then abort these steps.
1358
1358
</ li >
1359
- < li > Let < var > manifest URL</ var > be the result of < a > parsing</ a > the
1360
- value of the < code > href</ code > attribute, relative to < a > the
1361
- element's base URL</ a > . If parsing fails, then abort these steps.
1359
+ < li > Let < var > manifest URL</ var > be the result of [=URL
1360
+ Parser|parsing=] the value of the < code > href</ code > attribute,
1361
+ relative to < a > the element's base URL</ a > . If parsing fails, then
1362
+ abort these steps.
1362
1363
</ li >
1363
1364
< li > Let |request:Request| be a new < a > Request</ a > .
1364
1365
</ li >
@@ -1496,9 +1497,9 @@ <h3>
1496
1497
</ li >
1497
1498
</ ol >
1498
1499
</ li >
1499
- < li > Let < var > manifest</ var > be the result of < a data-lt =
1500
- " to idl dictionary value" > converting</ a > < var > json</ var > to a
1501
- < a > WebAppManifest </ a > dictionary.
1500
+ < li > Let < var > manifest</ var > be the result of [=converted to an idl
1501
+ value| converting=] < var > json</ var > to a < a > WebAppManifest </ a >
1502
+ dictionary.
1502
1503
</ li >
1503
1504
< li > Set < var > manifest</ var > ["< a > start_url</ a > "] to the result of
1504
1505
running < a > processing the < code > start_url</ code > member</ a > given
@@ -1584,8 +1585,8 @@ <h3 id="applying">
1584
1585
</ div >
1585
1586
< p >
1586
1587
The appropriate time to < a > apply</ a > a manifest is when the
1587
- < a > application context</ a > is created and before < a > navigation </ a > to
1588
- the < a > start URL</ a > begins.
1588
+ < a > application context</ a > is created and before
1589
+ [=navigate|navigation=] to the < a > start URL</ a > begins.
1589
1590
</ p >
1590
1591
</ section >
1591
1592
< section id ="updating ">
@@ -1808,13 +1809,13 @@ <h3>
1808
1809
< a > URL</ a > .
1809
1810
</ p >
1810
1811
< ol >
1811
- < li > Let < var > default</ var > be the result of < a > parsing </ a > ".", using
1812
- < var > start URL</ var > as the < var > base</ var > URL.
1812
+ < li > Let < var > default</ var > be the result of [=URL Parser|parsing=]
1813
+ ".", using < var > start URL</ var > as the < var > base</ var > URL.
1813
1814
</ li >
1814
1815
< li > If < var > value</ var > is the empty < a > string</ a > , then return < var >
1815
1816
default</ var > .
1816
1817
</ li >
1817
- < li > Let < var > scope URL</ var > be the result of < a > parsing</ a >
1818
+ < li > Let < var > scope URL</ var > be the result of [=URL Parser| parsing=]
1818
1819
< var > value</ var > , using < var > manifest URL</ var > as the
1819
1820
< var > base</ var > URL.
1820
1821
</ li >
@@ -1937,18 +1938,19 @@ <h3>
1937
1938
</ h3 >
1938
1939
< p >
1939
1940
The < dfn > orientation</ dfn > member is a < a > string</ a > that serves as
1940
- the < a > default orientation</ a > for all < a > top-level browsing
1941
+ the < a > default screen orientation</ a > for all < a > top-level browsing
1941
1942
contexts</ a > of the web application. The possible values are those of
1942
1943
the {{OrientationLockType}} enum defined in [[SCREEN-ORIENTATION]].
1943
1944
</ p >
1944
1945
< p >
1945
1946
If the user agent honors the value of the < a > orientation</ a > member
1946
- as the < a > default orientation</ a > , then that serves as the < a > default
1947
- orientation</ a > for the life of the web application (unless
1948
- overridden by some other means at runtime). This means that the user
1949
- agent MUST return the orientation to the < a > default orientation</ a >
1950
- any time the orientation is unlocked [[SCREEN-ORIENTATION]] or the
1951
- < a > top-level browsing context</ a > is < a > navigated</ a > .
1947
+ as the < a > default screen orientation</ a > , then that serves as the
1948
+ < a > default screen orientation</ a > for the life of the web application
1949
+ (unless overridden by some other means at runtime). This means that
1950
+ the user agent MUST return the orientation to the < a > default screen
1951
+ orientation</ a > any time the orientation is unlocked
1952
+ [[SCREEN-ORIENTATION]] or the < a > top-level browsing context</ a > is
1953
+ < a > navigated</ a > .
1952
1954
</ p >
1953
1955
< p >
1954
1956
Although the specification relies on the [[SCREEN-ORIENTATION]]'s
@@ -1962,8 +1964,8 @@ <h3>
1962
1964
together</ dfn > . Which orientations and display modes cannot be used
1963
1965
together is left to the discretion of implementers. For example, for
1964
1966
some user agents, it might not make sense to change the < a > default
1965
- orientation</ a > of an application while in < code > browser </ code >
1966
- < a > display mode</ a > .
1967
+ screen orientation</ a > of an application while in
1968
+ < code > browser </ code > < a > display mode</ a > .
1967
1969
</ p >
1968
1970
< p class ="note ">
1969
1971
Once the web application is running, other means can change the
@@ -2000,7 +2002,7 @@ <h3>
2000
2002
< li > If < var > value</ var > is the empty < a > string</ a > , return
2001
2003
< var > document URL</ var > .
2002
2004
</ li >
2003
- < li > Let < var > start URL</ var > be the result of < a > parsing</ a >
2005
+ < li > Let < var > start URL</ var > be the result of [=URL Parser| parsing=]
2004
2006
< var > value</ var > , using < var > manifest URL</ var > as the
2005
2007
< var > base</ var > URL.
2006
2008
</ li >
@@ -2033,7 +2035,7 @@ <h3>
2033
2035
For example, if the value of < a > start_url</ a > is
2034
2036
< samp > ../start_point.html</ samp > , and the manifest's URL is
2035
2037
< samp > https://example.com/resources/manifest.webmanifest</ samp > ,
2036
- then the result of < a > URL parsing</ a > would be
2038
+ then the result of [= URL parser| parsing=] would be
2037
2039
< samp > https://example.com/start_point.html</ samp > .
2038
2040
</ p >
2039
2041
</ div >
@@ -2368,20 +2370,21 @@ <h3>
2368
2370
< ol >
2369
2371
< li > If < var > shortcut</ var > ["name"] or < var > shortcut</ var > ["url"]
2370
2372
are undefined, or if < var > shortcut</ var > ["name"] is the empty
2371
- string, < a > issue a developer warning</ a > and < a > continue</ a > .
2373
+ string, < a > issue a developer warning</ a > and
2374
+ [=iteration/continue=].
2372
2375
</ li >
2373
2376
< li > Set < var > shortcut</ var > ["icons"] to the result of running < a >
2374
2377
processing `ImageResource` members</ a > given
2375
2378
< var > shortcut</ var > ["icons"] and < var > manifest URL</ var > .
2376
2379
</ li >
2377
- < li > Set < var > shortcut</ var > ["url"] to the result of
2378
- < a > parsing</ a > < var > shortcut</ var > ["url"] using < var > manifest
2380
+ < li > Set < var > shortcut</ var > ["url"] to the result of [=URL
2381
+ Parser| parsing=] < var > shortcut</ var > ["url"] using < var > manifest
2379
2382
URL</ var > as the base URL. If the result is failure, < a > issue a
2380
- developer warning</ a > and < a > continue </ a > .
2383
+ developer warning</ a > and [=iteration/continue=] .
2381
2384
</ li >
2382
2385
< li > If < var > shortcut</ var > ["url"] is not < a > within scope</ a > of
2383
- < var > manifest URL</ var > , < a > issue a developer warning</ a > and < a >
2384
- continue </ a > .
2386
+ < var > manifest URL</ var > , < a > issue a developer warning</ a > and
2387
+ [=iteration/continue=] .
2385
2388
</ li >
2386
2389
< li >
2387
2390
< a > Append</ a > < var
502C
> shortcut</ var > to
@@ -2657,8 +2660,8 @@ <h3>
2657
2660
< li > Set |canonicalKeyword| to < a > ascii lowercased</ a > |keyword|.
2658
2661
</ li >
2659
2662
< li > If |canonicalKeyword| is not one of the [=icon purposes=], or
2660
- |purposes| [=contains=] |keyword|, then [=issue a developer
2661
- warning=] and [=iteration/continue=].
2663
+ |purposes| [=set/contain| contains=] |keyword|, then [=issue a
2664
+ developer warning=] and [=iteration/continue=].
2662
2665
</ li >
2663
2666
< li > Otherwise, [=set/append=] |canonicalKeyword| to |purposes|.
2664
2667
</ li >
@@ -2837,15 +2840,15 @@ <h3>
2837
2840
consisting of an < a > unordered set of unique space-separated
2838
2841
tokens</ a > which are < a > ASCII case-insensitive</ a > that represents
2839
2842
the dimensions of an image. Each keyword is either an < a > ASCII
2840
- case-insensitive</ a > match for the < a > string</ a > "< a data-lt =
2841
- " any link size " > any" </ a > , or a value that consists of two < a > valid
2842
- non-negative integers </ a > that do not have a leading U+0030 DIGIT
2843
- ZERO (0) character and that are separated by a single U+0078 LATIN
2844
- SMALL LETTER X or U+0058 LATIN CAPITAL LETTER X character. The
2845
- keywords represent icon sizes in raw pixels (as opposed to CSS
2846
- pixels). When multiple < a > ImageResource </ a > s are available, a user
2847
- agent MAY use the value to decide which icon is most suitable for a
2848
- display context (and ignore any that are inappropriate).
2843
+ case-insensitive</ a > match for the < a > string</ a > "any", or a value
2844
+ that consists of two < a > valid non-negative integers </ a > that do not
2845
+ have a leading U+0030 DIGIT ZERO (0) character and that are separated
2846
+ by a single U+0078 LATIN SMALL LETTER X or U+0058 LATIN CAPITAL
2847
+ LETTER X character. The keywords represent icon sizes in raw pixels
2848
+ (as opposed to CSS pixels). When multiple < a > ImageResource </ a > s are
2849
+ available, a user agent MAY use the value to decide which icon is
2850
+ most suitable for a display context (and ignore any that are
2851
+ inappropriate).
2849
2852
</ p >
2850
2853
< p >
2851
2854
The steps for < dfn > processing the < code > sizes</ code > member of an
@@ -2950,8 +2953,8 @@ <h3>
2950
2953
< li > Let < var > image</ var > be a new object created as if by the
2951
2954
expression ({}).
2952
2955
</ li >
2953
- < li > Set < var > image</ var > ["src"] to the result of
2954
- < a > parsing</ a > < var > entry</ var > ["src"] using < var > manifest
2956
+ < li > Set < var > image</ var > ["src"] to the result of [=URL
2957
+ Parser| parsing=] < var > entry</ var > ["src"] using < var > manifest
2955
2958
URL</ var > as the base URL.
2956
2959
</ li >
2957
2960
< li > Set < var > image</ var > ["type"] to the result of running < a >
@@ -3232,9 +3235,9 @@ <h3>
3232
3235
< li > If < var > application URL</ var > is < code > undefined</ code > , return
3233
3236
< code > undefined</ code > .
3234
3237
</ li >
3235
- < li > Otherwise, < a > parse</ a > < var > application URL</ var > and if the
3236
- result is not failure, return the result, otherwise return
3237
- < code > undefined</ code > .
3238
+ < li > Otherwise, [=URL Parser| parse=] < var > application URL</ var > and if
3239
+ the result is not failure, return the result, otherwise return < code >
3240
+ undefined</ code > .
3238
3241
</ li >
3239
3242
</ ol >
3240
3243
</ section >
@@ -3761,10 +3764,10 @@ <h2>
3761
3764
< section id ="idl-index " class ="appendix ">
3762
3765
<!-- All the Web IDL will magically appear here -->
3763
3766
</ section >
3764
- < section class ="appendix ">
3765
- < h3 >
3767
+ < section id =" index " class ="appendix ">
3768
+ < h2 >
3766
3769
Terms defined by reference
3767
- </ h3 >
3770
+ </ h2 >
3768
3771
< p >
3769
3772
As the manifest uses the JSON format, this specification relies on the
3770
3773
types defined in [[ECMA-404]] specification: namely < dfn > object</ dfn > ,
@@ -3776,27 +3779,6 @@ <h3>
3776
3779
expected.
3777
3780
</ p >
3778
3781
< ul class ="index " data-sort ="">
3779
- < li > [[URL]] defines the following terms:
3780
- < ul >
3781
- < li >
3782
- < dfn data-cite ="URL#concept-url-parser " data-lt =
3783
- "parse|parsing|URL parsing "> URL parser</ dfn >
3784
- </ li >
3785
- </ ul >
3786
- </ li >
3787
- < li > [[SCREEN-ORIENTATION]] defines the following terms:
3788
- < ul >
3789
- < li >
3790
- < dfn data-cite =
3791
- "SCREEN-ORIENTATION#dfn-default-orientation "> default
3792
- orientation</ dfn >
3793
- </ li >
3794
- < li >
3795
- < dfn data-cite =
3796
- "SCREEN-ORIENTATION#dom-orientationlocktype "> OrientationLockType</ dfn >
3797
- </ li >
3798
- </ ul >
3799
- </ li >
3800
3782
< li > [[CSS-SYNTAX-3]] defines the following terms:
3801
3783
< ul >
3802
3784
< li >
@@ -3805,27 +3787,6 @@ <h3>
3805
3787
</ li >
3806
3788
</ ul >
3807
3789
</ li >
3808
- < li > [[CSP3]] defines the following terms:
3809
- < ul >
3810
- < li >
3811
- < a data-cite =
3812
- "CSP3#directive-manifest-src "> < dfn > manifest-src</ dfn >
3813
- directive</ a >
3814
- </ li >
3815
- < li >
3816
- < a data-cite ="CSP3#directive-default-src "> < dfn > default-src</ dfn >
3817
- directive</ a >
3818
- </ li >
3819
- </ ul >
3820
- </ li >
3821
- < li > [[SECURE-CONTEXTS]] defines the following terms:
3822
- < ul >
3823
- < li >
3824
- < a data-cite ="SECURE-CONTEXTS#is-origin-trustworthy "> < dfn > Is
3825
- origin potentially trustworthy</ dfn > </ a >
3826
- </ li >
3827
- </ ul >
3828
- </ li >
3829
3790
< li > [[ECMA-402]] defines the following terms:
3830
3791
< ul >
3831
3792
< li >
@@ -3838,15 +3799,6 @@ <h3>
3838
3799
</ li >
3839
3800
</ ul >
3840
3801
</ li >
3841
- < li > [[WEBIDL]] defines the following terms:
3842
- < ul >
3843
- < li >
3844
- < a data-cite ="WEBIDL#es-dictionary "> < dfn data-lt =
3845
- "to idl dictionary value "> converted to IDL dictionary
3846
- value</ dfn > </ a >
3847
- </ li >
3848
- </ ul >
3849
- </ li >
3850
3802
< li > [[DOM]] defines the following terms:
3851
3803
< ul >
<
BB94
code>3852 3804
< li >
@@ -3870,21 +3822,13 @@ <h3>
3870
3822
"HTML#unordered-set-of-unique-space-separated-tokens "> < dfn > unordered
3871
3823
set of unique space-separated tokens</ dfn > </ a >
3872
3824
</ li >
3873
- < li >
3874
- < a data-cite ="HTML#navigate "> < dfn data-lt =
3875
- "navigated|navigate|navigation "> navigate algorithm</ dfn > </ a >
3876
- </ li >
3877
3825
< li >
3878
3826
< a data-cite ="HTML#linkTypes "> < dfn > link type</ dfn > </ a >
3879
3827
</ li >
3880
3828
< li >
3881
3829
< a data-cite ="HTML#delay-the-load-event "> < dfn > delay the load
3882
3830
event</ dfn > </ a >
3883
3831
</ li >
3884
- < li >
3885
- < a data-cite ="HTML#attr-link-sizes-any "> < dfn > any link
3886
- size</ dfn > </ a >
3887
- </ li >
3888
3832
< li >
3889
3833
< a data-cite ="HTML#valid-non-negative-integer "> < dfn > valid
3890
3834
non-negative integer</ dfn > </ a >
@@ -3903,16 +3847,6 @@ <h3>
3903
3847
</ li >
3904
3848
</ ul >
3905
3849
</ li >
3906
- < li > [[INFRA]] defines the following terms:
3907
- < ul >
3908
- < li >
3909
- < dfn data-cite ="INFRA#list-contain "> contains</ dfn >
3910
- </ li >
3911
- < li >
3912
- < dfn data-cite ="INFRA#iteration-continue "> continue</ dfn >
3913
- </ li >
3914
- </ ul >
3915
- </ li >
3916
3850
< li > [[ECMASCRIPT]] defines the following terms:
3917
3851
< ul >
3918
3852
< li >
0 commit comments