diff options
-rw-r--r-- | xbmc/Application.cpp | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp index d6bfb64a35..f075a3e91c 100644 --- a/xbmc/Application.cpp +++ b/xbmc/Application.cpp @@ -4535,6 +4535,7 @@ bool CApplication::ToggleDPMS(bool manual) bool CApplication::WakeUpScreenSaverAndDPMS(bool bPowerOffKeyPressed /* = false */) { + bool result; #ifdef HAS_LCD // turn on lcd backlight @@ -4551,10 +4552,19 @@ bool CApplication::WakeUpScreenSaverAndDPMS(bool bPowerOffKeyPressed /* = false // (DPMS came first), activate screensaver now. ToggleDPMS(false); ResetScreenSaverTimer(); - return !m_bScreenSave || WakeUpScreenSaver(bPowerOffKeyPressed); + result = !m_bScreenSave || WakeUpScreenSaver(bPowerOffKeyPressed); } else - return WakeUpScreenSaver(bPowerOffKeyPressed); + result = WakeUpScreenSaver(bPowerOffKeyPressed); + + if(result) + { + // allow listeners to ignore the deactivation if it preceeds a powerdown/suspend etc + CVariant data(bPowerOffKeyPressed); + CAnnouncementManager::Announce(GUI, "xbmc", "OnScreensaverDeactivated", data); + } + + return result; } bool CApplication::WakeUpScreenSaver(bool bPowerOffKeyPressed /* = false */) @@ -4589,10 +4599,6 @@ bool CApplication::WakeUpScreenSaver(bool bPowerOffKeyPressed /* = false */) m_iScreenSaveLock = 0; ResetScreenSaverTimer(); - // allow listeners to ignore the deactivation if it preceeds a powerdown/suspend etc - CVariant data(bPowerOffKeyPressed); - CAnnouncementManager::Announce(GUI, "xbmc", "OnScreensaverDeactivated", data); - if (m_screenSaver->ID() == "visualization") { // we can just continue as usual from vis mode |