aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMemphiz <memphis@machzwo.de>2015-02-11 22:23:23 +0100
committerMemphiz <memphis@machzwo.de>2015-02-11 22:23:23 +0100
commit0fdb3886ec3d3ceced4d3be989b73bcf8eebd565 (patch)
tree2f89ce7b4d10ddc65ed232ec6c03b9e25d8e8050
parent01dc4917277f677be50b32efad6975d5b2be621c (diff)
[ios] - when using the hdmi adapter (or any other hardware tvout adapter) with ios8 devices - ensure that we do the proper rotation even if only the resolution on the external screen is switched
-rw-r--r--xbmc/osx/IOSScreenManager.mm15
1 files changed, 14 insertions, 1 deletions
diff --git a/xbmc/osx/IOSScreenManager.mm b/xbmc/osx/IOSScreenManager.mm
index f27d58cab5..adf6c6fd53 100644
--- a/xbmc/osx/IOSScreenManager.mm
+++ b/xbmc/osx/IOSScreenManager.mm
@@ -73,7 +73,20 @@ static CEvent screenChangeEvent;
- (void) setScreen:(unsigned int) screenIdx withMode:(UIScreenMode *)mode
{
UIScreen *newScreen = [[UIScreen screens] objectAtIndex:screenIdx];
- bool toExternal = _screenIdx == 0 && _screenIdx != screenIdx;
+ bool toExternal = false;
+
+ // current screen is main screen and new screen
+ // is different
+ if (_screenIdx == 0 && _screenIdx != screenIdx)
+ toExternal = true;
+
+ // current screen is not main screen
+ // and new screen is the same as current
+ // this means we are external already but
+ // for example resolution gets changed
+ // treat this as toExternal for proper rotation...
+ if (_screenIdx != 0 && _screenIdx == screenIdx)
+ toExternal = true;
//set new screen mode
[newScreen setCurrentMode:mode];