diff --git a/playermanager.cpp b/playermanager.cpp index 822b05e4902238a39df654cee989561b73a4c116..330cd82260ad172dca235da2ada36c2f247ec4f7 100644 --- a/playermanager.cpp +++ b/playermanager.cpp @@ -32,6 +32,7 @@ #include #include +#include #include "playlistinterface.h" #include "playeradaptor.h" @@ -353,7 +354,8 @@ void PlayerManager::volumeUp() if(!m_setup) return; - setVolume(volume() + 0.04); // 4% up + const auto newVolume = std::min(m_output->volume() + 0.04, 1.0); + m_output->setVolume(newVolume); // 4% up } void PlayerManager::volumeDown() @@ -361,7 +363,8 @@ void PlayerManager::volumeDown() if(!m_setup) return; - setVolume(volume() - 0.04); // 4% down + const auto newVolume = std::max(m_output->volume() - 0.04, 0.0); + m_output->setVolume(newVolume); // 4% down } void PlayerManager::setMuted(bool m) diff --git a/systemtray.cpp b/systemtray.cpp index 0a66d373c5abf953b332e1a40de436369349453f..2572b5562f5f63c84d54532aad536d93b6b4abb0 100644 --- a/systemtray.cpp +++ b/systemtray.cpp @@ -509,7 +509,7 @@ void SystemTray::scrollEvent(int delta, Qt::Orientation orientation) if(orientation == Qt::Horizontal) return; - switch(QApplication::keyboardModifiers()) { + switch(QApplication::queryKeyboardModifiers()) { case Qt::ShiftModifier: if(delta > 0) ActionCollection::action("volumeUp")->trigger();