From 8d9de8396bb26d64bf7844e203b4e05fff81c025 Mon Sep 17 00:00:00 2001 From: mantognini Date: Sat, 22 Jan 2011 08:57:32 +0000 Subject: [PATCH] OSX, fixed sf::Window::SetPosition for 10.4 and 10.5 (theoretically) git-svn-id: https://sfml.svn.sourceforge.net/svnroot/sfml/branches/sfml2@1774 4e206d99-4929-0410-ac5d-dfc041789085 --- src/SFML/Window/OSX/SFWindowController.mm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/SFML/Window/OSX/SFWindowController.mm b/src/SFML/Window/OSX/SFWindowController.mm index d2dbc6ab8..0a4764754 100644 --- a/src/SFML/Window/OSX/SFWindowController.mm +++ b/src/SFML/Window/OSX/SFWindowController.mm @@ -423,8 +423,21 @@ //////////////////////////////////////////////////////// -(float)screenHeight { + NSLog(@"hihi"); + // With Mac OS X 10.4 and 10.5, there is a shift upwards + // (about 22px – that is the apple menu bar height). With 10.6 and later + // we have a workaround : we hide the dock and get the visibleFrame of the + // screen (see NSApplicationPresentationOptions and NSScreen for more info). +#if MAC_OS_X_VERSION_MAX_ALLOWED < 1060 + NSLog(@"<1060"); + return NSHeight([[myWindow screen] frame]); + +#else // (NSApplicationPresentationOptions Availability: Mac OS X 10.6 and later) // We want to recompute it because the user may have moved the window to another screen // since last time. + + NSLog(@">=1060"); + static float height = 0.f; static NSDate* lastTime = [NSDate date]; if (height > 1.f && // height was set at least once. @@ -446,6 +459,7 @@ [NSApp setPresentationOptions:currentOptions]; return height; +#endif } ////////////////////////////////////////////////////////