From 8c62dd5c1e517115060362bc8e0f2e364ecfa2f5 Mon Sep 17 00:00:00 2001 From: Christian Muehlhaeuser Date: Sat, 30 Aug 2014 21:41:48 +0200 Subject: [PATCH] * Fixed RecentlyPlayedModel's insert-sorter. --- src/libtomahawk/playlist/RecentlyPlayedModel.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/libtomahawk/playlist/RecentlyPlayedModel.cpp b/src/libtomahawk/playlist/RecentlyPlayedModel.cpp index 31383847d..5b58697ee 100644 --- a/src/libtomahawk/playlist/RecentlyPlayedModel.cpp +++ b/src/libtomahawk/playlist/RecentlyPlayedModel.cpp @@ -130,11 +130,19 @@ RecentlyPlayedModel::onPlaybackFinished( const Tomahawk::track_ptr& track, const { PlayableItem* oldestItem = itemFromIndex( index( count - 1, 0, parent ) ); if ( oldestItem->playbackLog().timestamp >= log.timestamp ) + { + if ( count >= m_limit ) + return; + + insertQuery( track->toQuery(), count, log, parent ); return; + } PlayableItem* youngestItem = itemFromIndex( index( 0, 0, parent ) ); if ( youngestItem->playbackLog().timestamp <= log.timestamp ) + { insertQuery( track->toQuery(), 0, log, parent ); + } else { for ( int i = 0; i < count - 1; i++ ) @@ -164,8 +172,9 @@ RecentlyPlayedModel::onPlaybackFinished( const Tomahawk::track_ptr& track, const void RecentlyPlayedModel::onTracksLoaded( QList tracks, QList logs ) { - for ( int i = tracks.count() - 1; i >= 0; i-- ) + for ( int i = 0; i < tracks.count(); i++ ) { + tDebug() << tracks.at( i )->toString(); onPlaybackFinished( tracks.at( i ), logs.at( i ) ); } }