xmonad: make workspace swapping change focused workspace

This commit is contained in:
Primrose 2024-11-07 19:16:08 +01:00
parent 8d676a2ca1
commit 74a21ee155
Signed by: primrose
GPG key ID: 4E887A4CA9714ADA

View file

@ -5,6 +5,7 @@ import XMonad hiding (tile)
import XMonad.Actions.PerWindowKeys (bindFirst) import XMonad.Actions.PerWindowKeys (bindFirst)
import XMonad.Actions.SpawnOn (spawnOn) import XMonad.Actions.SpawnOn (spawnOn)
import XMonad.Actions.SwapWorkspaces(swapWithCurrent) import XMonad.Actions.SwapWorkspaces(swapWithCurrent)
import XMonad.Actions.WorkspaceNames(getCurrentWorkspaceName)
import XMonad.Util.EZConfig (additionalKeys, removeKeys) import XMonad.Util.EZConfig (additionalKeys, removeKeys)
import XMonad.Util.NamedScratchpad (NamedScratchpad (NS), import XMonad.Util.NamedScratchpad (NamedScratchpad (NS),
@ -31,7 +32,7 @@ import XMonad.Hooks.StatusBar (defToggleStrutsKey,
import XMonad.Hooks.StatusBar.PP (PP (ppCurrent, ppHiddenNoWindows, ppSep), import XMonad.Hooks.StatusBar.PP (PP (ppCurrent, ppHiddenNoWindows, ppSep),
filterOutWsPP, wrap, xmobarColor) filterOutWsPP, wrap, xmobarColor)
import XMonad.Hooks.InsertPosition (insertPosition, Focus(Newer), Position(Below)) import XMonad.Hooks.InsertPosition (insertPosition, Focus(Newer), Position(Below))
import XMonad.Hooks.Focus (Focus(currentWorkspace, focusedWindow))
import Graphics.X11.ExtraTypes.XF86 (xF86XK_AudioLowerVolume, import Graphics.X11.ExtraTypes.XF86 (xF86XK_AudioLowerVolume,
xF86XK_AudioMute, xF86XK_AudioMute,
@ -272,7 +273,12 @@ myKeymaps =
| (n, space) <- zip workspaceKeys myWorkspaces ] | (n, space) <- zip workspaceKeys myWorkspaces ]
-- organic work spacing swapping -- organic work spacing swapping
++ [ ((superMask .|. controlMask, n), windows $ swapWithCurrent space) ++ [ ( (superMask .|. controlMask, n)
, windows $ \set ->
W.greedyView (W.currentTag set)
. swapWithCurrent space
$ set
)
| (n, space) <- zip workspaceKeys myWorkspaces] | (n, space) <- zip workspaceKeys myWorkspaces]
-- Force autorandr to change profile -- Force autorandr to change profile