mirror of
https://github.com/tuxbox-fork-migrations/recycled-ni-neutrino.git
synced 2025-08-31 17:31:11 +02:00
audioplayer/screensaver: refresh screensaver picture when title was changed
Origin commit data
------------------
Branch: ni/coolstream
Commit: 21638a1998
Author: vanhofen <vanhofen@gmx.de>
Date: 2018-06-01 (Fri, 01 Jun 2018)
Origin message was:
------------------
- audioplayer/screensaver: refresh screensaver picture when title was changed
------------------
No further description and justification available within origin commit message!
------------------
This commit was generated by Migit
This commit is contained in:
@@ -2210,6 +2210,10 @@ void CAudioPlayerGui::play(unsigned int pos)
|
||||
m_time_total = m_playlist[m_current].MetaData.total_time;
|
||||
m_state = CAudioPlayerGui::PLAY;
|
||||
m_curr_audiofile = m_playlist[m_current];
|
||||
|
||||
if (m_screensaver && g_settings.audioplayer_cover_as_screensaver)
|
||||
CScreenSaver::getInstance()->forceRefresh();
|
||||
|
||||
// Play
|
||||
CAudioPlayer::getInstance()->play(&m_curr_audiofile, g_settings.audioplayer_highprio == 1);
|
||||
|
||||
|
@@ -64,6 +64,7 @@ CScreenSaver::CScreenSaver()
|
||||
clr.i_color = COL_DARK_GRAY;
|
||||
pip_channel_id = 0;
|
||||
idletime = time(NULL);
|
||||
force_refresh = false;
|
||||
}
|
||||
|
||||
CScreenSaver::~CScreenSaver()
|
||||
@@ -183,11 +184,20 @@ void* CScreenSaver::ScreenSaverPrg(void* arg)
|
||||
{
|
||||
PScreenSaver->ReadDir();
|
||||
PScreenSaver->paint();
|
||||
sleep(g_settings.screensaver_timeout);
|
||||
int t = g_settings.screensaver_timeout;
|
||||
while (t--)
|
||||
{
|
||||
sleep(1);
|
||||
if (PScreenSaver->force_refresh)
|
||||
{
|
||||
PScreenSaver->force_refresh = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
PScreenSaver->paint(); //just paint first found picture
|
||||
PScreenSaver->paint();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@@ -42,6 +42,7 @@ class CScreenSaver : public sigc::trackable
|
||||
std::vector<std::string> v_bg_files;
|
||||
unsigned int index;
|
||||
t_channel_id pip_channel_id;
|
||||
bool force_refresh;
|
||||
bool status_mute;
|
||||
bool status_icons; //NI
|
||||
|
||||
@@ -78,6 +79,7 @@ class CScreenSaver : public sigc::trackable
|
||||
|
||||
void resetIdleTime() { idletime = time(NULL); }
|
||||
time_t getIdleTime() { return idletime; }
|
||||
void forceRefresh() { force_refresh = true; }
|
||||
};
|
||||
|
||||
#endif // __CSCREENSAVER_H__
|
||||
|
Reference in New Issue
Block a user