aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui/playlistmodel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/qmmpui/playlistmodel.cpp')
-rw-r--r--src/qmmpui/playlistmodel.cpp26
1 files changed, 14 insertions, 12 deletions
diff --git a/src/qmmpui/playlistmodel.cpp b/src/qmmpui/playlistmodel.cpp
index 3dc90aee7..951d52dfa 100644
--- a/src/qmmpui/playlistmodel.cpp
+++ b/src/qmmpui/playlistmodel.cpp
@@ -113,21 +113,23 @@ void PlayListModel::add(QList<PlayListTrack *> tracks)
if(tracks.isEmpty())
return;
+ m_container->addTracks(tracks);
+
+ if(m_container->trackCount() == tracks.count())
+ {
+ m_current_track = tracks.first();
+ m_current = m_container->indexOf(m_current_track);
+ emit currentChanged();
+ }
+ else if(m_ui_settings->isGroupsEnabled())
+ {
+ //update current index for grouped container only
+ m_current = m_container->indexOf(m_current_track);
+ }
+
foreach(PlayListTrack *track, tracks)
{
- m_container->addTrack(track);
m_total_length += track->length();
- if(m_container->trackCount() == 1)
- {
- m_current_track = track;
- m_current = m_container->indexOf(track);
- emit currentChanged();
- }
- else if(m_ui_settings->isGroupsEnabled())
- {
- //update current index for grouped container only
- m_current = m_container->indexOf(m_current_track);
- }
emit trackAdded(track);
}
preparePlayState();