Skip to content

Removing steps on fullscreen element leave a dangling fullscreen flag #217

Closed
@nt1m

Description

@nt1m

If you have a fullscreen element, then move it to a different parent, it triggers the removing steps which does at step 3:

  1. If node is document’s fullscreen element, exit fullscreen document.
  2. Otherwise...
  3. If document’s top layer contains node, remove node from document’s top layer.

But in the exit fullscreen algorithm, the fullscreen flag is only removed at step 14.3. This is problematic, because that step runs in parallel, so step 3.3 of the removing steps which removes the fullscreen element from the top layer will run before.

That means we end up stopping the exit fullscreen at step 11, so we end up never removing the fullscreen flag, which is problematic if the removed element is re-appended in the document.

Chromium handles it specifically at step 7. of exit fullscreen, by invoking the "unfullscreen doc's fullscreen element" as a step 7.2.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions