diff options
Diffstat (limited to 'src/dolphinmainwindow.cpp')
| -rw-r--r-- | src/dolphinmainwindow.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 305c7f282..384e91ec9 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -281,11 +281,17 @@ void DolphinMainWindow::openFiles(const QStringList& files, bool splitView) 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() |
