mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-08-09 07:36:48 +02:00
* Always base playlist changes on currently loaded revision.
This commit is contained in:
@@ -587,23 +587,23 @@ Playlist::onResolvingFinished()
|
|||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
Playlist::addEntry( const query_ptr& query, const QString& oldrev )
|
Playlist::addEntry( const query_ptr& query )
|
||||||
{
|
{
|
||||||
QList<query_ptr> queries;
|
QList<query_ptr> queries;
|
||||||
queries << query;
|
queries << query;
|
||||||
|
|
||||||
addEntries( queries, oldrev );
|
addEntries( queries );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
Playlist::addEntries( const QList<query_ptr>& queries, const QString& oldrev )
|
Playlist::addEntries( const QList<query_ptr>& queries )
|
||||||
{
|
{
|
||||||
if ( !m_loaded )
|
if ( !m_loaded )
|
||||||
{
|
{
|
||||||
tDebug() << Q_FUNC_INFO << "Queueing addEntries call!";
|
tDebug() << Q_FUNC_INFO << "Queueing addEntries call!";
|
||||||
loadRevision( oldrev );
|
loadRevision();
|
||||||
m_queuedOps << NewClosure( 0, "", this, SLOT( addEntries( QList<Tomahawk::query_ptr>, QString ) ), queries, oldrev );
|
m_queuedOps << NewClosure( 0, "", this, SLOT( addEntries( QList<Tomahawk::query_ptr> ) ), queries );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -611,7 +611,7 @@ Playlist::addEntries( const QList<query_ptr>& queries, const QString& oldrev )
|
|||||||
const int prevSize = m_entries.size();
|
const int prevSize = m_entries.size();
|
||||||
|
|
||||||
QString newrev = uuid();
|
QString newrev = uuid();
|
||||||
createNewRevision( newrev, oldrev, el );
|
createNewRevision( newrev, m_currentrevision, el );
|
||||||
|
|
||||||
// We are appending at end, so notify listeners.
|
// We are appending at end, so notify listeners.
|
||||||
// PlaylistModel also emits during appends, but since we call
|
// PlaylistModel also emits during appends, but since we call
|
||||||
@@ -623,13 +623,13 @@ Playlist::addEntries( const QList<query_ptr>& queries, const QString& oldrev )
|
|||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
Playlist::insertEntries( const QList< query_ptr >& queries, const int position, const QString& oldrev )
|
Playlist::insertEntries( const QList< query_ptr >& queries, const int position )
|
||||||
{
|
{
|
||||||
if ( !m_loaded )
|
if ( !m_loaded )
|
||||||
{
|
{
|
||||||
tDebug() << Q_FUNC_INFO << "Queueing insertEntries call!";
|
tDebug() << Q_FUNC_INFO << "Queueing insertEntries call!";
|
||||||
loadRevision( oldrev );
|
loadRevision();
|
||||||
m_queuedOps << NewClosure( 0, "", this, SLOT( insertEntries( QList<Tomahawk::query_ptr>, int, QString ) ), queries, position, oldrev );
|
m_queuedOps << NewClosure( 0, "", this, SLOT( insertEntries( QList<Tomahawk::query_ptr>, int ) ), queries, position );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -640,14 +640,14 @@ Playlist::insertEntries( const QList< query_ptr >& queries, const int position,
|
|||||||
if ( position > m_entries.size() )
|
if ( position > m_entries.size() )
|
||||||
{
|
{
|
||||||
tDebug() << "ERROR trying to insert tracks past end of playlist! Appending!";
|
tDebug() << "ERROR trying to insert tracks past end of playlist! Appending!";
|
||||||
addEntries( queries, oldrev );
|
addEntries( queries );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
for ( int i = toInsert.size()-1; i >= 0; --i )
|
for ( int i = toInsert.size()-1; i >= 0; --i )
|
||||||
entries.insert( position, toInsert.at(i) );
|
entries.insert( position, toInsert.at(i) );
|
||||||
|
|
||||||
createNewRevision( uuid(), oldrev, entries );
|
createNewRevision( uuid(), m_currentrevision, entries );
|
||||||
|
|
||||||
// We are appending at end, so notify listeners.
|
// We are appending at end, so notify listeners.
|
||||||
// PlaylistModel also emits during appends, but since we call
|
// PlaylistModel also emits during appends, but since we call
|
||||||
|
@@ -198,9 +198,9 @@ public slots:
|
|||||||
// entries should be <= entries(), with changed metadata.
|
// entries should be <= entries(), with changed metadata.
|
||||||
void updateEntries( const QString& newrev, const QString& oldrev, const QList< plentry_ptr >& entries );
|
void updateEntries( const QString& newrev, const QString& oldrev, const QList< plentry_ptr >& entries );
|
||||||
|
|
||||||
virtual void addEntry( const Tomahawk::query_ptr& query, const QString& oldrev );
|
virtual void addEntry( const Tomahawk::query_ptr& query );
|
||||||
virtual void addEntries( const QList<Tomahawk::query_ptr>& queries, const QString& oldrev );
|
virtual void addEntries( const QList<Tomahawk::query_ptr>& queries );
|
||||||
virtual void insertEntries( const QList<Tomahawk::query_ptr>& queries, const int position, const QString& oldrev );
|
virtual void insertEntries( const QList<Tomahawk::query_ptr>& queries, const int position );
|
||||||
|
|
||||||
void reportCreated( const Tomahawk::playlist_ptr& self );
|
void reportCreated( const Tomahawk::playlist_ptr& self );
|
||||||
void reportDeleted( const Tomahawk::playlist_ptr& self );
|
void reportDeleted( const Tomahawk::playlist_ptr& self );
|
||||||
|
Reference in New Issue
Block a user