diff options
| author | Peter Penz <[email protected]> | 2012-01-30 12:07:08 +0100 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2012-01-30 12:09:36 +0100 |
| commit | 1d7088b1ada3de716ff591c22d400198450208d4 (patch) | |
| tree | 98dcb98cb56b1d09f2447acf2b7237eb02c8173e /src/views/dolphinview.cpp | |
| parent | 0a33aad3d28048720247faa3acdb4d32849e25b5 (diff) | |
Fix drag & drop issues with non-local URLs
BUG: 292821
BUG: 292355
FIXED-IN: 4.8.1
Diffstat (limited to 'src/views/dolphinview.cpp')
| -rw-r--r-- | src/views/dolphinview.cpp | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp index 539fcaacc..1e300c5cf 100644 --- a/src/views/dolphinview.cpp +++ b/src/views/dolphinview.cpp @@ -809,13 +809,13 @@ void DolphinView::slotItemUnhovered(int index) void DolphinView::slotItemDropEvent(int index, QGraphicsSceneDragDropEvent* event) { + KUrl destUrl; KFileItem destItem = fileItemModel()->fileItem(index); if (destItem.isNull()) { destItem = fileItemModel()->rootItem(); - if (destItem.isNull()) { - kWarning() << "No destination item available for drop operation."; - return; - } + destUrl = url(); + } else { + destUrl = destItem.url(); } QDropEvent dropEvent(event->pos().toPoint(), @@ -824,7 +824,7 @@ void DolphinView::slotItemDropEvent(int index, QGraphicsSceneDragDropEvent* even event->buttons(), event->modifiers()); - const QString error = DragAndDropHelper::dropUrls(destItem, &dropEvent); + const QString error = DragAndDropHelper::dropUrls(destItem, destUrl, &dropEvent); if (!error.isEmpty()) { emit errorMessage(error); } @@ -959,12 +959,7 @@ bool DolphinView::hasSelection() const KFileItem DolphinView::rootItem() const { - KFileItem item = m_dirLister->rootItem(); - if (item.isNull()) { - // The directory has not been loaded yet - item = KFileItem(KFileItem::Unknown, KFileItem::Unknown, url()); - } - return item; + return m_dirLister->rootItem(); } void DolphinView::observeCreatedItem(const KUrl& url) |
