diff options
| -rw-r--r-- | src/dolphincontextmenu.cpp | 14 | ||||
| -rw-r--r-- | src/panels/folders/treeviewcontextmenu.cpp | 8 | ||||
| -rw-r--r-- | src/views/dolphinview.cpp | 5 |
3 files changed, 19 insertions, 8 deletions
diff --git a/src/dolphincontextmenu.cpp b/src/dolphincontextmenu.cpp index b01346985..cb389b19c 100644 --- a/src/dolphincontextmenu.cpp +++ b/src/dolphincontextmenu.cpp @@ -34,8 +34,8 @@ #include <KIO/RestoreJob> #include <KIO/EmptyTrashJob> #include <KIO/JobUiDelegate> +#include <KIO/Paste> #include <KJobWidgets> -#include <QMenu> #include <KMimeTypeTrader> #include <KNewFileMenu> #include <konq_operations.h> @@ -44,7 +44,11 @@ #include <KStandardAction> #include <KToolBar> +#include <QApplication> +#include <QClipboard> #include <QMenuBar> +#include <QMenu> + #include <panels/places/placesitem.h> #include <panels/places/placesitemmodel.h> @@ -439,9 +443,11 @@ QAction* DolphinContextMenu::createPasteAction() QAction* action = 0; const bool isDir = !m_fileInfo.isNull() && m_fileInfo.isDir(); if (isDir && (m_selectedItems.count() == 1)) { - const QPair<bool, QString> pasteInfo = KonqOperations::pasteInfo(m_fileInfo.url()); - action = new QAction(QIcon::fromTheme("edit-paste"), i18nc("@action:inmenu", "Paste Into Folder"), this); - action->setEnabled(pasteInfo.first); + const QMimeData *mimeData = QApplication::clipboard()->mimeData(); + bool canPaste; + const QString text = KIO::pasteActionText(mimeData, &canPaste, m_fileInfo); + action = new QAction(QIcon::fromTheme("edit-paste"), text, this); + action->setEnabled(canPaste); connect(action, &QAction::triggered, m_mainWindow, &DolphinMainWindow::pasteIntoFolder); } else { action = m_mainWindow->actionCollection()->action(KStandardAction::name(KStandardAction::Paste)); diff --git a/src/panels/folders/treeviewcontextmenu.cpp b/src/panels/folders/treeviewcontextmenu.cpp index 4afe9e8e3..85d1215c6 100644 --- a/src/panels/folders/treeviewcontextmenu.cpp +++ b/src/panels/folders/treeviewcontextmenu.cpp @@ -70,10 +70,12 @@ void TreeViewContextMenu::open() QAction* copyAction = new QAction(QIcon::fromTheme("edit-copy"), i18nc("@action:inmenu", "Copy"), this); connect(copyAction, &QAction::triggered, this, &TreeViewContextMenu::copy); - const QPair<bool, QString> pasteInfo = KonqOperations::pasteInfo(m_fileItem.url()); - QAction* pasteAction = new QAction(QIcon::fromTheme("edit-paste"), pasteInfo.second, this); + const QMimeData *mimeData = QApplication::clipboard()->mimeData(); + bool canPaste; + const QString text = KIO::pasteActionText(mimeData, &canPaste, m_fileItem); + QAction* pasteAction = new QAction(QIcon::fromTheme("edit-paste"), text, this); connect(pasteAction, &QAction::triggered, this, &TreeViewContextMenu::paste); - pasteAction->setEnabled(pasteInfo.first); + pasteAction->setEnabled(canPaste); popup->addAction(cutAction); popup->addAction(copyAction); diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp index f35c9e6ca..b330e5f5c 100644 --- a/src/views/dolphinview.cpp +++ b/src/views/dolphinview.cpp @@ -1149,7 +1149,10 @@ void DolphinView::updateSortFoldersFirst(bool foldersFirst) QPair<bool, QString> DolphinView::pasteInfo() const { - return KonqOperations::pasteInfo(url()); + const QMimeData *mimeData = QApplication::clipboard()->mimeData(); + QPair<bool, QString> info; + info.second = KIO::pasteActionText(mimeData, &info.first, rootItem()); + return info; } void DolphinView::setTabsForFilesEnabled(bool tabsForFiles) |
