From fd6f62fd9a02aaf537fe507a1657391091deff4d Mon Sep 17 00:00:00 2001 From: marcelofg55 Date: Tue, 2 Aug 2016 22:30:19 -0300 Subject: [PATCH] Fix set_window_size not setting the correct size on OSX (cherry picked from commit 38de4d24efb51e70302fd08c819241db5ec545ad) --- platform/osx/os_osx.mm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/platform/osx/os_osx.mm b/platform/osx/os_osx.mm index dc87f767f67..ffae536ef03 100644 --- a/platform/osx/os_osx.mm +++ b/platform/osx/os_osx.mm @@ -1494,9 +1494,19 @@ Size2 OS_OSX::get_window_size() const { }; +const int menuHeight = [[NSStatusBar systemStatusBar] thickness]; + void OS_OSX::set_window_size(const Size2 p_size) { Size2 size=p_size; + + // NSRect used by setFrame includes the title bar, so add it to our size.y + CGFloat menuBarHeight = [[[NSApplication sharedApplication] mainMenu] menuBarHeight]; + if (menuBarHeight != 0.f) { + size.y+= menuBarHeight; + } else { + size.y+= menuHeight; + } NSRect frame = [window_object frame]; [window_object setFrame:NSMakeRect(frame.origin.x, frame.origin.y, size.x, size.y) display:YES]; };