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)