Summary:
`m_sourceModel->movePlace` is called using index from the view model.
This becomes an issue when there are hidden places items.
This change calls `m_sourceModel->movePlace` using the corresponding mapped source index.
BUG: 399430
FIXED-IN: 19.04.0
Test Plan:
# Create at least 4 Places items
# Hide first item
# Drag the now first visible item between second and third item
Actual: The item does not move
Expected: The first visible item should now be second visible item in the list
Reviewers: #dolphin, ngraham
Reviewed By: #dolphin, ngraham
Subscribers: ngraham, kfm-devel
Tags: #dolphin
Differential Revision: https://phabricator.kde.org/D19901
int oldIndex;
stream >> oldIndex;
- m_sourceModel->movePlace(oldIndex, index);
+ QModelIndex sourceIndex = mapToSource(index);
+ QModelIndex oldSourceIndex = mapToSource(oldIndex);
+
+ m_sourceModel->movePlace(oldSourceIndex.row(), sourceIndex.row());
} else if (mimeData->hasFormat(QStringLiteral("text/uri-list"))) {
// One or more items must be added to the model
const QList<QUrl> urls = KUrlMimeData::urlsFromMimeData(mimeData);