Fixed cocoa trying to shuffling windows when going fullscreen on the main display.

This commit is contained in:
Sam Lantinga
2011-02-10 22:49:14 -08:00
parent d43d02f3c3
commit f34f9e640b

View File

@@ -258,14 +258,23 @@ Cocoa_SetDisplayMode(_THIS, SDL_VideoDisplay * display, SDL_DisplayMode * mode)
/* Restoring desktop mode */
CGDisplaySwitchToMode(displaydata->display, data->moderef);
CGDisplayRelease(displaydata->display);
if (CGDisplayIsMain(displaydata->display)) {
CGReleaseAllDisplays();
} else {
CGDisplayRelease(displaydata->display);
}
if (CGDisplayIsMain(displaydata->display)) {
ShowMenuBar();
}
} else {
/* Put up the blanking window (a window above all other windows) */
result = CGDisplayCapture(displaydata->display);
if (CGDisplayIsMain(displaydata->display)) {
/* If we don't capture all displays, Cocoa tries to rearrange windows... *sigh* */
result = CGCaptureAllDisplays();
} else {
result = CGDisplayCapture(displaydata->display);
}
if (result != kCGErrorSuccess) {
CG_SetError("CGDisplayCapture()", result);
goto ERR_NO_CAPTURE;