aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xbmc/guilib/GraphicContext.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/xbmc/guilib/GraphicContext.cpp b/xbmc/guilib/GraphicContext.cpp
index 39b51ec9b3..880eeedcba 100644
--- a/xbmc/guilib/GraphicContext.cpp
+++ b/xbmc/guilib/GraphicContext.cpp
@@ -360,8 +360,20 @@ void CGraphicContext::SetFullScreenVideo(bool bOnOff)
if (m_bFullScreenRoot)
{
- bool allowDesktopRes = CServiceBroker::GetSettings().GetInt(CSettings::SETTING_VIDEOPLAYER_ADJUSTREFRESHRATE) == ADJUST_REFRESHRATE_ALWAYS;
- if (m_bFullScreenVideo || (!allowDesktopRes && g_application.GetAppPlayer().IsPlayingVideo()))
+ bool bTriggerUpdateRes = false;
+ if (m_bFullScreenVideo)
+ bTriggerUpdateRes = true;
+ else
+ {
+ bool allowDesktopRes = CServiceBroker::GetSettings().GetInt(CSettings::SETTING_VIDEOPLAYER_ADJUSTREFRESHRATE) == ADJUST_REFRESHRATE_ALWAYS;
+ if (!allowDesktopRes)
+ {
+ if (g_application.GetAppPlayer().IsPlayingVideo())
+ bTriggerUpdateRes = true;
+ }
+ }
+
+ if (bTriggerUpdateRes)
g_application.GetAppPlayer().TriggerUpdateResolution();
else if (CDisplaySettings::GetInstance().GetCurrentResolution() > RES_DESKTOP)
SetVideoResolution(CDisplaySettings::GetInstance().GetCurrentResolution(), false);