Merge pull request #27490 from bruvzg/macos_non_resizable_fullscreen
Allow non-resizeable windows to enter full-screen mode.
This commit is contained in:
commit
846e7bbc53
|
@ -271,6 +271,8 @@ static CVReturn DisplayLinkCallback(CVDisplayLinkRef displayLink, const CVTimeSt
|
|||
|
||||
- (void)windowDidExitFullScreen:(NSNotification *)notification {
|
||||
OS_OSX::singleton->zoomed = false;
|
||||
if (!OS_OSX::singleton->resizable)
|
||||
[OS_OSX::singleton->window_object setStyleMask:[OS_OSX::singleton->window_object styleMask] & ~NSWindowStyleMaskResizable];
|
||||
}
|
||||
|
||||
- (void)windowDidChangeBackingProperties:(NSNotification *)notification {
|
||||
|
@ -2300,6 +2302,8 @@ void OS_OSX::set_window_fullscreen(bool p_enabled) {
|
|||
if (zoomed != p_enabled) {
|
||||
if (layered_window)
|
||||
set_window_per_pixel_transparency_enabled(false);
|
||||
if (!resizable)
|
||||
[window_object setStyleMask:[window_object styleMask] | NSWindowStyleMaskResizable];
|
||||
[window_object toggleFullScreen:nil];
|
||||
}
|
||||
zoomed = p_enabled;
|
||||
|
@ -2314,7 +2318,7 @@ void OS_OSX::set_window_resizable(bool p_enabled) {
|
|||
|
||||
if (p_enabled)
|
||||
[window_object setStyleMask:[window_object styleMask] | NSWindowStyleMaskResizable];
|
||||
else
|
||||
else if (!zoomed)
|
||||
[window_object setStyleMask:[window_object styleMask] & ~NSWindowStyleMaskResizable];
|
||||
|
||||
resizable = p_enabled;
|
||||
|
|
Loading…
Reference in New Issue