Re: [whatwg/fullscreen] Give "exit fullscreen" a fully flag and define "fully exit fullscreen" using it (#65)

foolip commented on this pull request.



>     <li><p>If <var>exitDocs</var> is the empty set, append <var>doc</var> to <var>exitDocs</var>.
 
    <li><p>If <var>exitDocs</var>'s last <a for=/>document</a> has a
    <a>browsing context container</a>, append that <a>browsing context container</a>'s
    <a>node document</a> to <var>exitDocs</var>.
    <!-- cross-process -->
 
+   <li><p>If <var>resize</var> is true, then: while <var>exitDocs</var>'s last <a for=/>document</a>
+   has a <a>browsing context container</a>, append that <a>browsing context container</a>'s
+   <a>node document</a> to <var>exitDocs</var>.
+   <!-- cross-process -->
+
    <li><p>Let <var>descendantDocs</var> be an ordered set consisting of <var>doc</var>'s

Using *doc* here seems like a problem before and after this change. Before, the fullscreen element in one of *exitDocs* may have been another iframe, since we have no hierarchy restrictions now. The wrong part of the frame tree is then going to get its fullscreen state cleared.

With this change, there's the additional problem that if *fully flag* is set, we'll exit fully in all those documents, and there may be a bunch of frames that need state cleared that don't get it.

I'm thinking that maybe the synchronous intro of "exit fullscreen" should instead determine a single *exitDoc*, from which one or all fullscreen top layer elements will be removed depending on the *fully flag*. Then there will be no "collecting documents to unfullscreen" in the animation frame task, only an attempt to make it so. Would that kind of model work? Should I work it into this PR or not?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/fullscreen/pull/65#pullrequestreview-15118897

Received on Wednesday, 4 January 2017 14:24:44 UTC