diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/panels/folders/treeviewcontextmenu.cpp | 22 | ||||
| -rw-r--r-- | src/views/dolphinview.cpp | 20 |
2 files changed, 40 insertions, 2 deletions
diff --git a/src/panels/folders/treeviewcontextmenu.cpp b/src/panels/folders/treeviewcontextmenu.cpp index df96b9f25..893a494fb 100644 --- a/src/panels/folders/treeviewcontextmenu.cpp +++ b/src/panels/folders/treeviewcontextmenu.cpp @@ -14,8 +14,6 @@ #include <KFileItemListProperties> #include <KIO/CopyJob> #include <KIO/DeleteJob> -#include <KIO/FileUndoManager> -#include <KIO/JobUiDelegate> #include <KIO/Paste> #include <KIO/PasteJob> #include <KJobWidgets> @@ -24,6 +22,14 @@ #include <KSharedConfig> #include <KUrlMimeData> +#include <kio_version.h> +#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) +#include <KIO/DeleteOrTrashJob> +#else +#include <KIO/FileUndoManager> +#include <KIO/JobUiDelegate> +#endif + #include <QApplication> #include <QClipboard> #include <QMenu> @@ -193,6 +199,11 @@ void TreeViewContextMenu::rename() void TreeViewContextMenu::moveToTrash() { +#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) + using Iface = KIO::AskUserActionInterface; + auto *deleteJob = new KIO::DeleteOrTrashJob(QList{m_fileItem.url()}, Iface::Trash, Iface::DefaultConfirmation, m_parent); + deleteJob->start(); +#else const QList<QUrl> list{m_fileItem.url()}; KIO::JobUiDelegate uiDelegate; uiDelegate.setWindow(m_parent); @@ -202,10 +213,16 @@ void TreeViewContextMenu::moveToTrash() KJobWidgets::setWindow(job, m_parent); job->uiDelegate()->setAutoErrorHandlingEnabled(true); } +#endif } void TreeViewContextMenu::deleteItem() { +#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) + using Iface = KIO::AskUserActionInterface; + auto *deleteJob = new KIO::DeleteOrTrashJob(QList{m_fileItem.url()}, Iface::Delete, Iface::DefaultConfirmation, m_parent); + deleteJob->start(); +#else const QList<QUrl> list{m_fileItem.url()}; KIO::JobUiDelegate uiDelegate; uiDelegate.setWindow(m_parent); @@ -214,6 +231,7 @@ void TreeViewContextMenu::deleteItem() KJobWidgets::setWindow(job, m_parent); job->uiDelegate()->setAutoErrorHandlingEnabled(true); } +#endif } void TreeViewContextMenu::showProperties() diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp index 4e5f4c786..e8603858f 100644 --- a/src/views/dolphinview.cpp +++ b/src/views/dolphinview.cpp @@ -49,6 +49,11 @@ #include <kwidgetsaddons_version.h> +#include <kio_version.h> +#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) +#include <KIO/DeleteOrTrashJob> +#endif + #include <QAbstractItemView> #include <QActionGroup> #include <QApplication> @@ -753,6 +758,13 @@ void DolphinView::renameSelectedItems() void DolphinView::trashSelectedItems() { const QList<QUrl> list = simplifiedSelectedUrls(); + +#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) + using Iface = KIO::AskUserActionInterface; + auto *trashJob = new KIO::DeleteOrTrashJob(list, Iface::Trash, Iface::DefaultConfirmation, this); + connect(trashJob, &KJob::result, this, &DolphinView::slotTrashFileFinished); + trashJob->start(); +#else KIO::JobUiDelegate uiDelegate; uiDelegate.setWindow(window()); if (uiDelegate.askDeleteConfirmation(list, KIO::JobUiDelegate::Trash, KIO::JobUiDelegate::DefaultConfirmation)) { @@ -762,12 +774,19 @@ void DolphinView::trashSelectedItems() connect(job, &KIO::Job::result, this, &DolphinView::slotTrashFileFinished); } +#endif } void DolphinView::deleteSelectedItems() { const QList<QUrl> list = simplifiedSelectedUrls(); +#if KIO_VERSION >= QT_VERSION_CHECK(5, 100, 0) + using Iface = KIO::AskUserActionInterface; + auto *trashJob = new KIO::DeleteOrTrashJob(list, Iface::Delete, Iface::DefaultConfirmation, this); + connect(trashJob, &KJob::result, this, &DolphinView::slotTrashFileFinished); + trashJob->start(); +#else KIO::JobUiDelegate uiDelegate; uiDelegate.setWindow(window()); if (uiDelegate.askDeleteConfirmation(list, KIO::JobUiDelegate::Delete, KIO::JobUiDelegate::DefaultConfirmation)) { @@ -776,6 +795,7 @@ void DolphinView::deleteSelectedItems() connect(job, &KIO::Job::result, this, &DolphinView::slotDeleteFileFinished); } +#endif } void DolphinView::cutSelectedItemsToClipboard() |
