Fix macOS/Linux fullscreen Spaces and disable live window resize#185
Merged
Conversation
* Pass nullptr to SDL_SetWindowFullscreenMode to request Desktop Fullscreen (Spaces) instead of Exclusive mode, allowing trackpad gestures to work. * Remove SDL_WINDOW_RESIZABLE to prevent live window resizing (which distorts the DXVK swapchain) and to disable the native macOS green maximize button in windowed mode.
* Allows live window resizing and native maximize/minimize buttons to work as expected in windowed mode (-win). * Fullscreen Spaces support remains active due to the nullptr argument in W3DDisplay.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Fixes macOS and Linux fullscreen behavior (Spaces/Desktop Fullscreen).
Changes
SDL_SetWindowFullscreenModeto receivenullptrinstead ofmode, effectively requesting Desktop Fullscreen instead of Exclusive Fullscreen. This restores native macOS Spaces support (mouse gestures) and prevents X11/Wayland from locking out the window manager on Linux.SDL_WINDOW_RESIZABLEflag to disable manual window edge dragging (which messes up the DXVK swapchain on live resize) and correctly disables the native macOS maximize (green) button when in windowed mode, improving the game-like experience.