@@ -44,10 +44,6 @@ urlPrefix: https://w3c.github.io/screen-orientation/#dfn-
4444<p> Most terminology used in this specification is from CSS, DOM, HTML, and Web IDL. [[!CSS]]
4545[[!DOM]] [[!HTML]] [[!WEBIDL]]
4646
47- <p> A <a for=/>browsing context</a> <var> A</var> is called a <dfn>descendant browsing context</dfn>
48- of a <a for=/>browsing context</a> <var> B</var> if and only if <var> B</var> is an
49- <a>ancestor browsing context</a> of <var> A</var> .
50-
5147
5248
5349<h2 id=model>Model</h2>
@@ -273,9 +269,10 @@ are:
273269 <li><p> Return <var> promise</var> , and run the remaining steps <a>in parallel</a> .
274270
275271 <li>
276- <p> If <var> error</var> is false, then resize <var> pendingDoc</var> 's
277- <a>top-level browsing context</a> 's <a>active document</a>' s viewport's dimensions, optionally
278- taking into account <var> options</var> ["{{FullscreenOptions/navigationUI}}"] :
272+ <p> If <var> error</var> is false, then resize <var> pendingDoc</var> 's <a>node navigable</a>' s
273+ <a for=navigable>top-level traversable</a> 's <a for=navigable>active document</a>' s viewport's
274+ dimensions, optionally taking into account
275+ <var> options</var> ["{{FullscreenOptions/navigationUI}}"] :
279276 <!-- cross-process -->
280277
281278 <table>
@@ -327,9 +324,20 @@ are:
327324 <li><p> Let <var> fullscreenElements</var> be an <a>ordered set</a> initially consisting of
328325 <a>this</a> .
329326
330- <li><p> <a>While</a> the last element in <var> fullscreenElements</var> is in a
331- <a>nested browsing context</a> : <a for=set>append</a> its <a>browsing context container</a> to
332- <var> fullscreenElements</var> .
327+ <li>
328+ <p> While true:
329+
330+ <ol>
331+ <li><p> Let <var> last</var> be the last <a for=list>item</a> of <var> fullscreenElements</var> .
332+
333+ <li><p> Let <var> container</var> be <var> last</var> 's <a>node navigable</a>' s
334+ <a for=navigable>container</a> .
335+
336+ <li><p> If <var> container</var> is null, then <a>break</a> .
337+
338+ <li><p> <a for=set>Append</a> <var> container</var> to <var> fullscreenElements</var> .
339+ </ol>
340+ </li>
333341 <!-- cross-process -->
334342
335343 <li>
358366 <li><p> Resolve <var> promise</var> with undefined.
359367</ol>
360368
361- <p class=note> Implementations with out-of-process <a for=/>browsing contexts </a> are left as an
362- exercise to the reader. Input welcome on potential improvements.
369+ <p class=note> Implementations with out-of-process <a for=/>navigables </a> are left as an exercise
370+ to the reader. Input welcome on potential improvements.
363371</div>
364372
365373<p> The <dfn attribute for=Document><code>fullscreenEnabled</code></dfn> getter steps are to return
@@ -414,8 +422,10 @@ could be an open <{dialog}> element.
414422
415423 <li><p> If <var> lastDoc</var> is not a <a>simple fullscreen document</a> , <a>break</a> .
416424
417- <li><p> Let <var> container</var> be <var> lastDoc</var> 's <a>browsing context container</a> , if
418- any, and otherwise <a>break</a> .
425+ <li><p> Let <var> container</var> be <var> lastDoc</var> 's <a>node navigable</a>' s
426+ <a for=navigable>container</a> .
427+
428+ <li><p> If <var> container</var> is null, then <a>break</a> .
419429
420430 <li><p> If <var> container</var> 's <a>iframe fullscreen flag</a> is set, <a>break</a> .
421431
@@ -448,8 +458,8 @@ could be an open <{dialog}> element.
448458 <var> doc</var> .
449459 <!-- cross-process -->
450460
451- <li><p> Let <var> topLevelDoc</var> be <var> doc</var> 's <a>top-level browsing context </a>' s
452- <a>active document</a> .
461+ <li><p> Let <var> topLevelDoc</var> be <var> doc</var> 's <a>node navigable </a>' s
462+ <a for=navigable>top-level traversable</a> 's <a for=navigable >active document</a> .
453463 <!-- cross-process -->
454464
455465 <li><p> If <var> topLevelDoc</var> is in <var> docs</var> , and it is a
@@ -476,8 +486,8 @@ could be an open <{dialog}> element.
476486 <!-- cross-process -->
477487
478488 <li><p> Let <var> descendantDocs</var> be an <a>ordered set</a> consisting of <var> doc</var> 's
479- <a>descendant browsing contexts </a> ' <a>active documents</a> whose <a>fullscreen element</a> is
480- non-null, if any, in <a>tree order</a> .
489+ <a for=Document >descendant navigables </a> ' <a for=navigable >active documents</a> whose
490+ <a>fullscreen element</a> is non-null, if any, in <a>tree order</a> .
481491 <!-- cross-process -->
482492
483493 <li>
@@ -546,8 +556,8 @@ corresponding <a>event handler content attributes</a> for {{Element}} objects in
546556{{Element/requestFullscreen()}} and {{Document/exitFullscreen()}} .
547557
548558<p> If the end user instructs the user agent to end a fullscreen session initiated via
549- {{Element/requestFullscreen()}} , <a>fully exit fullscreen</a> the
550- <a>top-level browsing context </a> 's <a>active document</a> .
559+ {{Element/requestFullscreen()}} , <a>fully exit fullscreen</a> given the
560+ <a for=/ >top-level traversable </a> 's <a>active document</a> .
551561
552562<p> The user agent may end any fullscreen session without instruction from the end user
553563or call to {{Document/exitFullscreen()}} whenever the user agent deems it necessary.
@@ -724,11 +734,11 @@ advertise this to the user. This is to prevent a site from spoofing the end user
724734user agent or even operating system environment when fullscreen. See also the definition of
725735{{Element/requestFullscreen()}} .
726736
727- <p> To enable content in a <a>nested browsing context </a> to go fullscreen, it needs to be
728- specifically allowed via permissions policy, either through the <{iframe/allowfullscreen}> attribute
729- of the HTML <{iframe}> element, or an appropriate declaration in the <{iframe/allow}> attribute of
730- the HTML <{iframe}> element, or through a `<a http-header><code>Permissions-Policy</code></a> ` HTTP
731- header delivered with the <a>document</a> through which it is nested.
737+ <p> To enable content in a <a>child navigable </a> to go fullscreen, it needs to be specifically
738+ allowed via permissions policy, either through the <{iframe/allowfullscreen}> attribute of the HTML
739+ <{iframe}> element, or an appropriate declaration in the <{iframe/allow}> attribute of the HTML
740+ <{iframe}> element, or through a `<a http-header><code>Permissions-Policy</code></a> ` HTTP header
741+ delivered with the <a>document</a> through which it is nested.
732742
733743<p> This prevents e.g. content from third parties to go fullscreen without explicit permission.
734744
0 commit comments