diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/qmmpui/mediaplayer.cpp | 12 | ||||
| -rw-r--r-- | src/qmmpui/playlistmodel.cpp | 6 |
2 files changed, 8 insertions, 10 deletions
diff --git a/src/qmmpui/mediaplayer.cpp b/src/qmmpui/mediaplayer.cpp index 56621d9ee..53df32ba8 100644 --- a/src/qmmpui/mediaplayer.cpp +++ b/src/qmmpui/mediaplayer.cpp @@ -143,11 +143,7 @@ void MediaPlayer::stop() void MediaPlayer::next() { - if (!m_pl_manager->currentPlayList()->isEmptyQueue()) - { - m_pl_manager->currentPlayList()->setCurrentToQueued(); - } - else if (!m_pl_manager->currentPlayList()->next()) + if (!m_pl_manager->currentPlayList()->next()) { stop(); return; @@ -194,11 +190,7 @@ void MediaPlayer::setRepeatable(bool r) void MediaPlayer::playNext() { - if (!m_pl_manager->currentPlayList()->isEmptyQueue()) //TODO move this inside PlayListModel - { - m_pl_manager->currentPlayList()->setCurrentToQueued(); - } - else if (!m_pl_manager->currentPlayList()->next()) + if (!m_pl_manager->currentPlayList()->next()) { stop(); return; diff --git a/src/qmmpui/playlistmodel.cpp b/src/qmmpui/playlistmodel.cpp index fd7035881..1db931f2f 100644 --- a/src/qmmpui/playlistmodel.cpp +++ b/src/qmmpui/playlistmodel.cpp @@ -177,6 +177,12 @@ bool PlayListModel::setCurrent(int c) bool PlayListModel::next() { + if (!isEmptyQueue()) + { + setCurrentToQueued(); + return TRUE; + } + if (isFileLoaderRunning()) m_play_state->prepare(); return m_play_state->next(); |
