Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Web: Fullscreen Overhaul #3063

Merged
merged 4 commits into from
Aug 29, 2023

Conversation

daxpedda
Copy link
Member

This overhauls the fullscreen functionality.

Transient events are now recorded from all known events and from the window as well. See the specification for a list of all events that trigger transient activation.

Instead of awaiting the returned Promise, which didn't work on Safari v<16.4, to figure out if we want to add the fullscreen request to the queue, we now listen to the fullscreenchange event. Which can also detect external fullscreen activation and remove the our fullscreen request from the queue.

The Element::request_fullscreen() method also included an error, which is incorrect according to the new and old spec. So I removed it, we needed our custom implementation anyway to account for catching the returned Promise.

@daxpedda daxpedda merged commit 0c8cf94 into rust-windowing:master Aug 29, 2023
50 checks passed
kchibisov pushed a commit to kchibisov/winit that referenced this pull request Oct 17, 2023
kchibisov pushed a commit that referenced this pull request Oct 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

Successfully merging this pull request may close these issues.

1 participant