aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/General/notifier/notifier.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/General/notifier/notifier.cpp')
-rw-r--r--src/plugins/General/notifier/notifier.cpp26
1 files changed, 25 insertions, 1 deletions
diff --git a/src/plugins/General/notifier/notifier.cpp b/src/plugins/General/notifier/notifier.cpp
index ed40ea9b9..8af0c8d6d 100644
--- a/src/plugins/General/notifier/notifier.cpp
+++ b/src/plugins/General/notifier/notifier.cpp
@@ -32,9 +32,11 @@ Notifier::Notifier(QObject *parent) : QObject(parent)
m_popupWidget = 0;
m_l = -1;
m_r = -1;
+ m_isPaused = false;
QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
settings.beginGroup("Notifier");
m_desktop = settings.value("song_notification", true).toBool();
+ m_resumeNotification = settings.value("resume_notification", false).toBool();
m_showVolume = settings.value("volume_notification", true).toBool();
m_psi = settings.value("psi_notification", false).toBool();
settings.endGroup();
@@ -74,9 +76,31 @@ Notifier::~Notifier()
void Notifier::setState(Qmmp::State state)
{
- if(state == Qmmp::Stopped)
+ switch ((uint) state)
{
+ case Qmmp::Playing:
+ {
+ if (m_isPaused)
+ {
+ showMetaData();
+ m_isPaused = false;
+ break;
+ }
+ }
+ case Qmmp::Paused:
+ {
+ if(m_resumeNotification)
+ m_isPaused = true;
+ break;
+ }
+ case Qmmp::Stopped:
+ {
+ m_isPaused = false;
removePsiTuneFiles();
+ break;
+ }
+ default:
+ m_isPaused = false;
}
}