diff --git a/lib/documentview/documentview.cpp b/lib/documentview/documentview.cpp index 829268d35d5b3e2b8761ea576501a3c7a7606983..02045f4e3bece1126717939309f62f1a1e2601c3 100644 --- a/lib/documentview/documentview.cpp +++ b/lib/documentview/documentview.cpp @@ -391,7 +391,9 @@ struct DocumentViewPrivate { } mDrag = new QDrag(q); const auto itemList = KFileItemList({q->document()->url()}); - mDrag->setMimeData(MimeTypeUtils::selectionMimeData(itemList, MimeTypeUtils::DropTarget)); + auto *mimeData = MimeTypeUtils::selectionMimeData(itemList, MimeTypeUtils::DropTarget); + KUrlMimeData::exportUrlsToPortal(mimeData); + mDrag->setMimeData(mimeData); if (q->document()->isModified()) { setDragPixmap(QPixmap::fromImage(q->document()->image())); @@ -1109,7 +1111,7 @@ void DocumentView::dropEvent(QGraphicsSceneDragDropEvent *event) { QGraphicsWidget::dropEvent(event); // Since we're capturing drops in View mode, we only support one url - const QUrl url = event->mimeData()->urls().first(); + const QUrl url = KUrlMimeData::urlsFromMimeData(event->mimeData()).first(); if (UrlUtils::urlIsDirectory(url)) { Q_EMIT openDirUrlRequested(url); } else { diff --git a/lib/thumbnailview/thumbnailview.cpp b/lib/thumbnailview/thumbnailview.cpp index c4857113a62d6ccf0a4f18540b424e2bb6ecc3c2..adf3f3fe7f23bc361c45f711c9b4427c0ffd6785 100644 --- a/lib/thumbnailview/thumbnailview.cpp +++ b/lib/thumbnailview/thumbnailview.cpp @@ -727,7 +727,9 @@ void ThumbnailView::startDrag(Qt::DropActions) } auto drag = new QDrag(this); - drag->setMimeData(MimeTypeUtils::selectionMimeData(selectedFiles, MimeTypeUtils::DropTarget)); + auto *mimeData = MimeTypeUtils::selectionMimeData(selectedFiles, MimeTypeUtils::DropTarget); + KUrlMimeData::exportUrlsToPortal(mimeData); + drag->setMimeData(mimeData); d->initDragPixmap(drag, indexes); drag->exec(Qt::MoveAction | Qt::CopyAction | Qt::LinkAction, Qt::CopyAction); }