┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/dolphinview.cpp19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/dolphinview.cpp b/src/dolphinview.cpp
index 610a6d1ff..685177db4 100644
--- a/src/dolphinview.cpp
+++ b/src/dolphinview.cpp
@@ -605,12 +605,21 @@ void DolphinView::renameSelectedItems()
void DolphinView::trashSelectedItems()
{
emit doingOperation(KIO::FileUndoManager::Trash);
- KonqOperations::del(this, KonqOperations::TRASH, selectedUrls());
+ KUrl::List list = selectedUrls();
+ DolphinDetailsView *dv = qobject_cast<DolphinDetailsView*>(itemView());
+ if (dv && dv->itemsExpandable()) {
+ list = KonqOperations::simplifiedUrlList(list);
+ }
+ KonqOperations::del(this, KonqOperations::TRASH, list);
}
void DolphinView::deleteSelectedItems()
{
- const KUrl::List list = selectedUrls();
+ KUrl::List list = selectedUrls();
+ DolphinDetailsView *dv = qobject_cast<DolphinDetailsView*>(itemView());
+ if (dv && dv->itemsExpandable()) {
+ list = KonqOperations::simplifiedUrlList(list);
+ }
const bool del = KonqOperations::askDeleteConfirmation(list,
KonqOperations::DEL,
KonqOperations::DEFAULT_CONFIRMATION,
@@ -626,7 +635,11 @@ void DolphinView::deleteSelectedItems()
void DolphinView::cutSelectedItems()
{
QMimeData* mimeData = new QMimeData();
- const KUrl::List kdeUrls = selectedUrls();
+ KUrl::List kdeUrls = selectedUrls();
+ DolphinDetailsView *dv = qobject_cast<DolphinDetailsView*>(itemView());
+ if (dv && dv->itemsExpandable()) {
+ kdeUrls = KonqOperations::simplifiedUrlList(kdeUrls);
+ }
const KUrl::List mostLocalUrls;
KonqMimeData::populateMimeData(mimeData, kdeUrls, mostLocalUrls, true);
QApplication::clipboard()->setMimeData(mimeData);