#include "views/dolphinview.h"
#include "views/dolphinviewactionhandler.h"
-#include <KPluginMetaData>
#include <KActionCollection>
#include <KAuthorized>
#include <KConfigGroup>
#include <KDialogJobUiDelegate>
#include <KDirLister>
#include <KFileItemListProperties>
+#include <KIO/CommandLauncherJob>
#include <KIconLoader>
#include <KJobWidgets>
#include <KLocalizedString>
#include <KMessageBox>
#include <KMimeTypeEditor>
-#include <KNS3/KMoreToolsMenuFactory>
+#include <KMoreToolsMenuFactory>
#include <KPluginFactory>
-#include <KIO/CommandLauncherJob>
+#include <KPluginMetaData>
#include <KSharedConfig>
#include <KTerminalLauncherJob>
+#include <kio_version.h>
#include <QActionGroup>
#include <QApplication>
connect(m_view, &DolphinView::itemCountChanged, this, &DolphinPart::updateStatusBar);
connect(m_view, &DolphinView::selectionChanged, this, &DolphinPart::updateStatusBar);
- m_actionHandler = new DolphinViewActionHandler(actionCollection(), this);
+ m_actionHandler = new DolphinViewActionHandler(actionCollection(), nullptr, this);
m_actionHandler->setCurrentView(m_view);
connect(m_actionHandler, &DolphinViewActionHandler::createDirectoryTriggered, this, &DolphinPart::createDirectory);
void DolphinPart::slotOpenContextMenu(const QPoint& pos,
const KFileItem& _item,
- const QUrl &,
- const QList<QAction*>& customActions)
+ const KFileItemList &selectedItems,
+ const QUrl &)
{
KParts::BrowserExtension::PopupFlags popupFlags = KParts::BrowserExtension::DefaultPopupItems
| KParts::BrowserExtension::ShowProperties
item.setUrl(url()); // ensure we use the view url, not the canonical path (#213799)
}
- // TODO: We should change the signature of the slots (and signals) for being able
- // to tell for which items we want a popup.
KFileItemList items;
- if (m_view->selectedItems().isEmpty()) {
+ if (selectedItems.isEmpty()) {
items.append(item);
} else {
- items = m_view->selectedItems();
+ items = selectedItems;
}
KFileItemListProperties capabilities(items);
KParts::BrowserExtension::ActionGroupMap actionGroups;
QList<QAction *> editActions;
editActions += m_view->versionControlActions(m_view->selectedItems());
- editActions += customActions;
if (!_item.isNull()) { // only for context menu on one or more items
const bool supportsMoving = capabilities.supportsMoving();
// As requested by KNewFileMenu :
m_newFileMenu->checkUpToDate();
// And set the files that the menu apply on :
+#if KIO_VERSION >= QT_VERSION_CHECK(5, 97, 0)
+ m_newFileMenu->setWorkingDirectory(url());
+#else
m_newFileMenu->setPopupFiles(QList<QUrl>() << url());
+#endif
}
void DolphinPart::updateStatusBar()
void DolphinPart::createDirectory()
{
+#if KIO_VERSION >= QT_VERSION_CHECK(5, 97, 0)
+ m_newFileMenu->setWorkingDirectory(url());
+#else
m_newFileMenu->setPopupFiles(QList<QUrl>() << url());
+#endif
m_newFileMenu->createDirectory();
}