Adjust runOnWorkspaces processing order

We now use this in `broadcastMessage`, so to not change which workspaces
get the message first, we need to change the order here. This wouldn't
normally be safe to do either, but there are no other uses of
`runOnWorkspaces` neither here nor in xmonad-contrib, so it should
actually be fine.
This commit is contained in:
Tomas Janousek 2021-09-04 18:04:49 +01:00
parent 6d661203d3
commit 11d76e284c
2 changed files with 6 additions and 1 deletions

View File

@ -65,6 +65,11 @@
it easier for us to clean up the codebase. These can still be suppressed
manually using an `OPTIONS_GHC` pragma with `-Wno-deprecations`.
* `runOnWorkspaces` changed to first run the action on the current
workspace, then the visible workspaces and then hidden, to match the order
of processing messages in `broadcastMessage`. Previously,
`runOnWorkspaces` processed the hidden workspaces first.
## 0.15 (September 30, 2018)
* Reimplement `sendMessage` to deal properly with windowset changes made

View File

@ -470,9 +470,9 @@ xmessage msg = void . xfork $ do
runOnWorkspaces :: (WindowSpace -> X WindowSpace) -> X ()
runOnWorkspaces job = do
ws <- gets windowset
h <- mapM job $ hidden ws
c:v <- mapM (\s -> (\w -> s { workspace = w}) <$> job (workspace s))
$ current ws : visible ws
h <- mapM job $ hidden ws
modify $ \s -> s { windowset = ws { current = c, visible = v, hidden = h } }
-- | All the directories that xmonad will use. They will be used for