mirror of
https://github.com/xmonad/xmonad-contrib.git
synced 2025-08-06 06:51:55 -07:00
X.A.DynamicWorkspace: update index map on workspace renaming
This commit is contained in:
@@ -125,10 +125,15 @@ renameWorkspace :: XPConfig -> X ()
|
|||||||
renameWorkspace conf = workspacePrompt conf renameWorkspaceByName
|
renameWorkspace conf = workspacePrompt conf renameWorkspaceByName
|
||||||
|
|
||||||
renameWorkspaceByName :: String -> X ()
|
renameWorkspaceByName :: String -> X ()
|
||||||
renameWorkspaceByName w = windows $ \s -> let sett wk = wk { tag = w }
|
renameWorkspaceByName w = do old <- gets (currentTag . windowset)
|
||||||
|
windows $ \s -> let sett wk = wk { tag = w }
|
||||||
setscr scr = scr { workspace = sett $ workspace scr }
|
setscr scr = scr { workspace = sett $ workspace scr }
|
||||||
sets q = q { current = setscr $ current q }
|
sets q = q { current = setscr $ current q }
|
||||||
in sets $ removeWorkspace' w s
|
in sets $ removeWorkspace' w s
|
||||||
|
updateIndexMap old w
|
||||||
|
where updateIndexMap old new = do
|
||||||
|
wmap <- XS.gets workspaceIndexMap
|
||||||
|
XS.modify $ \s -> s {workspaceIndexMap = Map.map (\t -> if t == old then new else t) wmap}
|
||||||
|
|
||||||
toNthWorkspace :: (String -> X ()) -> Int -> X ()
|
toNthWorkspace :: (String -> X ()) -> Int -> X ()
|
||||||
toNthWorkspace job wnum = do sort <- getSortByIndex
|
toNthWorkspace job wnum = do sort <- getSortByIndex
|
||||||
|
Reference in New Issue
Block a user