screensaver: move more repeatedly used code to screensaver's code

Signed-off-by: Thilo Graf <dbt@novatux.de>


Origin commit data
------------------
Branch: ni/coolstream
Commit: 81b82668ac
Author: vanhofen <vanhofen@gmx.de>
Date: 2017-11-25 (Sat, 25 Nov 2017)

Origin message was:
------------------
- screensaver: move more repeatedly used code to screensaver's code

Signed-off-by: Thilo Graf <dbt@novatux.de>


------------------
This commit was generated by Migit
This commit is contained in:
vanhofen
2017-11-25 09:58:55 +01:00
committed by Thilo Graf
parent d77f9b5f06
commit 10351f8d91
4 changed files with 11 additions and 5 deletions

View File

@@ -1671,8 +1671,7 @@ void CMoviePlayerGui::PlayFileLoop(void)
if (playstate == CMoviePlayerGui::PAUSE && (msg == CRCInput::RC_timeout || msg == NeutrinoMessages::EVT_TIMER))
{
time_t delay = time(NULL) - CScreenSaver::getInstance()->getIdleTime();
if (g_settings.screensaver_delay && delay > g_settings.screensaver_delay*60 && !CScreenSaver::getInstance()->isActive())
if (CScreenSaver::getInstance()->canStart() && !CScreenSaver::getInstance()->isActive())
{
videoDecoder->setBlank(true);
CScreenSaver::getInstance()->Start();

View File

@@ -314,6 +314,13 @@ void CScreenSaver::paint()
}
}
bool CScreenSaver::canStart()
{
if (g_settings.screensaver_delay && (time(NULL) - idletime > g_settings.screensaver_delay*60))
return true;
return false;
}
bool CScreenSaver::isActive()
{
if(thrScreenSaver)

View File

@@ -53,7 +53,7 @@ class CScreenSaver : public sigc::trackable
struct s_color {
uint8_t b, g, r, a;
} uc_color;
unsigned int i_color;
unsigned int i_color;
};
u_color clr;
@@ -68,6 +68,7 @@ class CScreenSaver : public sigc::trackable
CScreenSaver();
~CScreenSaver();
static CScreenSaver* getInstance();
bool canStart();
bool isActive();
void Start();
void Stop();

View File

@@ -2613,8 +2613,7 @@ void CNeutrinoApp::RealRun()
);
if (msg == CRCInput::RC_timeout || msg == NeutrinoMessages::EVT_TIMER)
{
time_t delay = time(NULL) - CScreenSaver::getInstance()->getIdleTime();
if (g_settings.screensaver_delay && delay > g_settings.screensaver_delay*60 && !CScreenSaver::getInstance()->isActive())
if (CScreenSaver::getInstance()->canStart() && !CScreenSaver::getInstance()->isActive())
{
CInfoClock::getInstance()->block();
CScreenSaver::getInstance()->Start();