#include <KDualAction>
#include <KFileItemListProperties>
#include <KIO/CommandLauncherJob>
+#include <kio_version.h>
+#if KIO_VERSION >= QT_VERSION_CHECK(5, 98, 0)
+#include <KIO/JobUiDelegateFactory>
+#else
#include <KIO/JobUiDelegate>
+#endif
#include <KIO/OpenFileManagerWindowJob>
#include <KIO/OpenUrlJob>
#include <KJobWidgets>
openFiles(QUrl::fromStringList(files), splitView);
}
-void DolphinMainWindow::activateWindow()
+void DolphinMainWindow::activateWindow(const QString &activationToken)
{
window()->setAttribute(Qt::WA_NativeWindow, true);
- KStartupInfo::setNewStartupId(window()->windowHandle(), KStartupInfo::startupId());
- KWindowSystem::activateWindow(window()->effectiveWinId());
+
+ if (KWindowSystem::isPlatformWayland()) {
+ KWindowSystem::setCurrentXdgActivationToken(activationToken);
+ } else {
+ KStartupInfo::setNewStartupId(window()->windowHandle(), KStartupInfo::startupId());
+ }
+
+ KWindowSystem::activateWindow(window()->windowHandle());
}
bool DolphinMainWindow::isActiveWindow()
activeViewContainer()->setUrl(url);
} else {
m_lastHandleUrlOpenJob = new KIO::OpenUrlJob(url);
+#if KIO_VERSION >= QT_VERSION_CHECK(5, 98, 0)
+ m_lastHandleUrlOpenJob->setUiDelegate(KIO::createDefaultJobUiDelegate(KJobUiDelegate::AutoHandlingEnabled, this));
+#else
m_lastHandleUrlOpenJob->setUiDelegate(new KIO::JobUiDelegate(KJobUiDelegate::AutoHandlingEnabled, this));
+#endif
m_lastHandleUrlOpenJob->setShowOpenOrExecuteDialog(true);
connect(m_lastHandleUrlOpenJob, &KIO::OpenUrlJob::mimeTypeFound, this,
return m_tabWidget->isUrlOpen(QUrl::fromUserInput(url));
}
-bool DolphinMainWindow::isUrlOrParentOpen(const QString &url)
+bool DolphinMainWindow::isItemVisibleInAnyView(const QString &urlOfItem)
{
- return m_tabWidget->isUrlOrParentOpen(QUrl::fromUserInput(url));
+ return m_tabWidget->isItemVisibleInAnyView(QUrl::fromUserInput(urlOfItem));
}