diff options
| author | ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> | 2024-03-03 17:50:49 +0100 |
|---|---|---|
| committer | ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> | 2024-03-03 17:50:49 +0100 |
| commit | 130f5b6dc1c2258b1a05c9319d796b96dc2d4f7e (patch) | |
| tree | 41d40ad5e87e2ffb207482dac00ec50310bc6263 /src/Fl_cocoa.mm | |
| parent | d832ab742a9247b928c530a91d195410b17387b4 (diff) | |
A window needs is_resizable() true to obey fullscreen() or maximize()
Diffstat (limited to 'src/Fl_cocoa.mm')
| -rw-r--r-- | src/Fl_cocoa.mm | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/Fl_cocoa.mm b/src/Fl_cocoa.mm index 875109e45..9def92f70 100644 --- a/src/Fl_cocoa.mm +++ b/src/Fl_cocoa.mm @@ -1353,7 +1353,7 @@ static FLWindowDelegate *flwindowdelegate_instance = nil; window->redraw(); } #endif - if (!window->parent() && window->border()) { + if (!window->parent() && window->border() && Fl_Window_Driver::driver(window)->is_resizable()) { Fl_Cocoa_Window_Driver::driver(window)->is_maximized([nsw isZoomed]); } fl_unlock_function(); @@ -3215,7 +3215,7 @@ void Fl_Cocoa_Window_Driver::makeWindow() void Fl_Cocoa_Window_Driver::fullscreen_on() { pWindow->_set_fullscreen(); #if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 - if (fl_mac_os_version >= 100700) { + if (fl_mac_os_version >= 100700 && pWindow->border()) { # if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7 FLWindow *nswin = fl_xid(pWindow); [nswin toggleFullScreen:nil]; @@ -3277,7 +3277,7 @@ static NSUInteger calc_win_style(Fl_Window *win) { NSUInteger winstyle; if (win->border() && !win->fullscreen_active()) { winstyle = NSWindowStyleMaskTitled | NSWindowStyleMaskClosable; - if (win->resizable()) winstyle |= NSWindowStyleMaskResizable; + if (Fl_Window_Driver::driver(win)->is_resizable()) winstyle |= NSWindowStyleMaskResizable; if (!win->modal()) winstyle |= NSWindowStyleMaskMiniaturizable; } else winstyle = NSWindowStyleMaskBorderless; return winstyle; @@ -3301,10 +3301,12 @@ static void restore_window_title_and_icon(Fl_Window *pWindow, NSImage *icon) { void Fl_Cocoa_Window_Driver::fullscreen_off(int X, int Y, int W, int H) { pWindow->_clear_fullscreen(); #if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 - if (fl_mac_os_version >= 100700) { + if (fl_mac_os_version >= 100700 && pWindow->border()) { # if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7 FLWindow *nswin = fl_xid(pWindow); [nswin toggleFullScreen:nil]; + [nswin setStyleMask:calc_win_style(pWindow)]; //10.6 + pWindow->resize(*no_fullscreen_x(), *no_fullscreen_y(), *no_fullscreen_w(), *no_fullscreen_h()); # endif } else if (fl_mac_os_version >= 100600) { FLWindow *nswin = fl_xid(pWindow); |
