From cc7fbc49bb6d154addb451ca041dc7e8466c7cc3 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Sat, 29 Sep 2012 16:41:32 -0700 Subject: [PATCH] Only change the UI orientation if it's actually necessary for the mode. --- src/video/uikit/SDL_uikitvideo.m | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/video/uikit/SDL_uikitvideo.m b/src/video/uikit/SDL_uikitvideo.m index 6aca7d261..6e95dd715 100644 --- a/src/video/uikit/SDL_uikitvideo.m +++ b/src/video/uikit/SDL_uikitvideo.m @@ -357,11 +357,12 @@ static void UIKit_DeleteDevice(SDL_VideoDevice * device) SDL_DisplayModeData *modedata = (SDL_DisplayModeData *)mode->driverdata; [data->uiscreen setCurrentMode:modedata->uiscreenmode]; - CGSize size = [modedata->uiscreenmode size]; - if (size.width >= size.height) { - [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO]; - } else { - [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait animated:NO]; + if (mode->w > mode->h) { + if (!UIInterfaceOrientationIsLandscape([[UIApplication sharedApplication] statusBarOrientation])) + [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO]; + } else if (mode->w < mode->h) { + if (!UIInterfaceOrientationIsPortrait([[UIApplication sharedApplication] statusBarOrientation])) + [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait animated:NO]; } }