m_iScreenSaveLock = 0;
ResetScreenSaverTimer();
- if (m_screenSaver->ID() == "screensaver.xbmc.builtin.dim" || m_screenSaver->ID() == "screensaver.xbmc.builtin.black" || m_screenSaver->ID().empty())
+ if (m_screenSaver->ID() == "visualization")
+ {
+ // we can just continue as usual from vis mode
+ return false;
+ }
+ else if (m_screenSaver->ID() == "screensaver.xbmc.builtin.dim" || m_screenSaver->ID() == "screensaver.xbmc.builtin.black" || m_screenSaver->ID().empty())
return true;
else if (!m_screenSaver->ID().empty())
{ // we're in screensaver window
- if (g_windowManager.GetActiveWindow() == WINDOW_SCREENSAVER
- || g_windowManager.GetActiveWindow() == WINDOW_VISUALISATION)
+ if (g_windowManager.GetActiveWindow() == WINDOW_SCREENSAVER)
g_windowManager.PreviousWindow(); // show the previous window
-
if (g_windowManager.GetActiveWindow() == WINDOW_SLIDESHOW)
CApplicationMessenger::Get().SendAction(CAction(ACTION_STOP), WINDOW_SLIDESHOW);
}
// the type of screensaver displayed
void CApplication::ActivateScreenSaver(bool forceType /*= false */)
{
+ if (m_pPlayer->IsPlayingAudio() && CSettings::Get().GetBool("screensaver.usemusicvisinstead") && !CSettings::Get().GetString("musicplayer.visualisation").empty())
+ { // just activate the visualisation if user toggled the usemusicvisinstead option
+ g_windowManager.ActivateWindow(WINDOW_VISUALISATION);
+ return;
+ }
+
m_bScreenSave = true;
// Get Screensaver Mode
if (!CAddonMgr::Get().GetAddon("screensaver.xbmc.builtin.dim", m_screenSaver))
m_screenSaver.reset(new CScreenSaver(""));
}
- // Check if we are Playing Audio and Vis instead Screensaver!
- else if (m_pPlayer->IsPlayingAudio() && CSettings::Get().GetBool("screensaver.usemusicvisinstead") && !CSettings::Get().GetString("musicplayer.visualisation").empty())
- { // activate the visualisation
- m_screenSaver.reset(new CScreenSaver("visualization"));
- // prevent music info popup if vis is already running
- if (g_windowManager.GetActiveWindow() != WINDOW_VISUALISATION)
- g_windowManager.ActivateWindow(WINDOW_VISUALISATION);
- return;
- }
}
if (m_screenSaver->ID() == "screensaver.xbmc.builtin.dim" || m_screenSaver->ID().empty())
return;