Re: [whatwg/fullscreen] Remove from top layer synchronously for not connected elements (#128)

> It's not completely clear to me how #65 would make things better... Do you mean moving more stuff into the async part would make it easier to implement in Chrome? I guess I'm fine with something like, invoke fully exit fullscreen asynchronously when the element gets removed... Would that resolve your problem?

@upsuper, yes, if we use "fully exit fullscreen" to handle removing the current fullscreen element, and if we want to guarantee that it really does leave the document in question with an empty top layer stack, or alternatively that we resize and empty the top layers of *all* documents, then "fully exist fullscreen" needs to have some flag to really guarantee that, much like what @dtapuska has pushed now, in the same vein as https://github.com/whatwg/fullscreen/pull/65.

However, reading this thread again, and looking at the "double-calling `exitFullscreen` issue", I'd like to ask if we can separate these issues. We have a bunch of very intricate interactions between entering and exiting / full exiting fullscreen that don't quite make sense, and I think that making only "fully exit fullscreen" have a stronger guarantee isn't that helpful.

I would suggest, rather, that if we are really troubled by these interactions, that we make it explicit that only one request to enter or exit fullscreen can be in-flight at once, then we can stop worrying about these cases or multiple requests racing. Effectively, then, the fullscreen state is a global thing and the first request always wins. (Details to be worked out.)

@upsuper, do you think leaving this wart for now would be acceptable? It would amount to going back to the state of this PR at https://github.com/whatwg/fullscreen/pull/128/commits/f59df4d7ad153af7360d0270ed36fdf84627f861.

-- 
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/128#issuecomment-409625718

Received on Wednesday, 1 August 2018 16:00:48 UTC