Re: [whatwg/fullscreen] Remove top layer definitions, now that CSS Position 4 contains them. (PR #223)

OK, I've tested the `A.rFS(); B.rFS(); A.rFS();` scenario with this test case:

```html
<style>
div {
    padding: 1em;
    display: grid;
    place-items: center;
}
</style>
<div id="A" style="background-color:lavender">
 <span>This is A. <button onclick="fs(event)">go/toggle fullscreen</button></span>
</div>
<div id="B" style="background-color: lemonchiffon">
 <span>This is B. <button onclick="fs(event)">go/toggle fullscreen</button></span>
</div>
<script>
const divs = Array.from(document.querySelectorAll('div'));
function fs(event) {
    let target = event.target.closest('div');
    if (target === document.fullscreenElement) {
        // Toggle between the two divs when already fullscreen.
        target = divs.find((div) => div !== document.fullscreenElement);
    }
    console.log(`Requesting fullscreen for ${target.id}`);
    target.requestFullscreen().then(() => {
        console.log(`Success for ${target.id}`);
    }, (error) => {
        console.log(`Error for ${target.id}: ${error.message}`);
    });
}
</script>
```

As it turns out, only Chrome supports toggling between fullscreen elements like this.

Firefox fails the toggle request with "Request for fullscreen was denied because requesting element is not a descendant of the current fullscreen element."

Safari also rejects the `requestFullscreen()` call, without a message, but it must be this descendant check in the source:
https://github.com/WebKit/WebKit/blob/f462028e09b021b5d2768fee9ea0ffc056565b94/Source/WebCore/dom/FullscreenManager.cpp#L224-L230

In other words, the original hierarchy restrictions are still in Gecko and WebKit, see https://github.com/whatwg/fullscreen/issues/140 for further links.

@josepharhar @mfreed7 do you have preferences on how we handle this?

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

Message ID: <whatwg/fullscreen/pull/223/c1522928629@github.com>

Received on Wednesday, 26 April 2023 07:35:52 UTC