Fix a bug where dragging songs to the bottom of the playlist would actually move them back to the top.
This commit is contained in:
parent
de782c980d
commit
2035c3e7f5
|
@ -707,9 +707,9 @@ bool Playlist::dropMimeData(const QMimeData* data, Qt::DropAction action, int ro
|
|||
stream.readRawData(reinterpret_cast<char*>(&source_playlist), sizeof(source_playlist));
|
||||
stream >> source_rows;
|
||||
if (!stream.atEnd()) {
|
||||
stream.readRawData((char*)&pid, sizeof(pid));
|
||||
stream.readRawData((char*)&pid, sizeof(pid));
|
||||
} else {
|
||||
pid = ! own_pid;
|
||||
pid = ! own_pid;
|
||||
}
|
||||
|
||||
qStableSort(source_rows); // Make sure we take them in order
|
||||
|
@ -791,6 +791,10 @@ void Playlist::MoveItemsWithoutUndo(const QList<int>& source_rows, int pos) {
|
|||
layoutAboutToBeChanged();
|
||||
PlaylistItemList moved_items;
|
||||
|
||||
if (pos < 0) {
|
||||
pos = items_.count();
|
||||
}
|
||||
|
||||
// Take the items out of the list first, keeping track of whether the
|
||||
// insertion point changes
|
||||
int offset = 0;
|
||||
|
@ -802,10 +806,6 @@ void Playlist::MoveItemsWithoutUndo(const QList<int>& source_rows, int pos) {
|
|||
}
|
||||
offset++;
|
||||
}
|
||||
|
||||
if (pos < 0) {
|
||||
pos = items_.count();
|
||||
}
|
||||
|
||||
// Put the items back in
|
||||
for (int i=start ; i<start+moved_items.count() ; ++i) {
|
||||
|
|
Loading…
Reference in New Issue