diff --git a/doc/windowbehaviour/index.docbook b/doc/windowbehaviour/index.docbook
index 18b5e8ce77..9b7b7f5742 100644
--- a/doc/windowbehaviour/index.docbook
+++ b/doc/windowbehaviour/index.docbook
@@ -1190,6 +1190,18 @@ Choose this option if you would like windows to always open on the current Virtu
+
+Do nothing
+
+
+The window stays on the desktop it currently is and the current desktop doesn't change.
+
+
+Choose this option if you would like to keep the windows and desktops as they are.
+
+
+
+
diff --git a/src/activation.cpp b/src/activation.cpp
index 20e0e5decd..8b273cf426 100644
--- a/src/activation.cpp
+++ b/src/activation.cpp
@@ -296,6 +296,8 @@ void Workspace::activateWindow(Window *window, bool force)
case Options::ActivationDesktopPolicy::BringToCurrentDesktop:
window->enterDesktop(VirtualDesktopManager::self()->currentDesktop());
break;
+ case Options::ActivationDesktopPolicy::DoNothing:
+ break;
}
--block_focus;
}
diff --git a/src/kcms/options/advanced.ui b/src/kcms/options/advanced.ui
index ecf3afbcbc..9167397947 100644
--- a/src/kcms/options/advanced.ui
+++ b/src/kcms/options/advanced.ui
@@ -169,6 +169,11 @@
Bring window to current Virtual Desktop
+ -
+
+ Do nothing
+
+
diff --git a/src/kwin.kcfg b/src/kwin.kcfg
index 7b9190633a..46bac99242 100644
--- a/src/kwin.kcfg
+++ b/src/kwin.kcfg
@@ -136,6 +136,7 @@
+
KWin::Options::ActivationDesktopPolicy::SwitchToOtherDesktop
diff --git a/src/options.h b/src/options.h
index 78730a7b79..a78255ce08 100644
--- a/src/options.h
+++ b/src/options.h
@@ -360,7 +360,8 @@ public:
enum ActivationDesktopPolicy {
SwitchToOtherDesktop,
- BringToCurrentDesktop
+ BringToCurrentDesktop,
+ DoNothing,
};
Q_ENUM(ActivationDesktopPolicy)