┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/views/dolphinview.cpp5
-rw-r--r--src/views/draganddrophelper.cpp11
2 files changed, 11 insertions, 5 deletions
diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp
index 2aa0525c9..8ec7f335d 100644
--- a/src/views/dolphinview.cpp
+++ b/src/views/dolphinview.cpp
@@ -823,7 +823,10 @@ void DolphinView::slotItemDropEvent(int index, QGraphicsSceneDragDropEvent* even
event->buttons(),
event->modifiers());
- DragAndDropHelper::dropUrls(destItem, url(), &dropEvent);
+ const QString error = DragAndDropHelper::dropUrls(destItem, url(), &dropEvent);
+ if (!error.isEmpty()) {
+ emit errorMessage(error);
+ }
}
void DolphinView::slotModelChanged(KItemModelBase* current, KItemModelBase* previous)
diff --git a/src/views/draganddrophelper.cpp b/src/views/draganddrophelper.cpp
index 8e5873480..ea92787ab 100644
--- a/src/views/draganddrophelper.cpp
+++ b/src/views/draganddrophelper.cpp
@@ -44,10 +44,13 @@ QString DragAndDropHelper::dropUrls(const KFileItem& destItem,
QDBusConnection::sessionBus().call(message);
} else {
const KUrl::List urls = KUrl::List::fromMimeData(event->mimeData());
- const int urlsCount = urls.count();
- if (urlsCount == 1 && urls.first() == destination) {
- return i18nc("@info:status", "A folder cannot be dropped into itself");
- } else if (dropToItem) {
+ foreach (const KUrl& url, urls) {
+ if (url == destination) {
+ return i18nc("@info:status", "A folder cannot be dropped into itself");
+ }
+ }
+
+ if (dropToItem) {
KonqOperations::doDrop(destItem, destination, event, QApplication::activeWindow());
} else {
KonqOperations::doDrop(KFileItem(), destination, event, QApplication::activeWindow());