[xmonad] Issue 568 in xmonad: Actions.DynamicWorkspaceGroups viewWSGroup changes which workspace has focus incorrectly
codesite-noreply at google.com
codesite-noreply at google.com
Wed May 7 00:31:20 UTC 2014
Status: New
Owner: ----
New issue 568 by nwfila... at gmail.com: Actions.DynamicWorkspaceGroups
viewWSGroup changes which workspace has focus incorrectly
http://code.google.com/p/xmonad/issues/detail?id=568
When running viewWSGroup, the focus is set to whichever display is last in
the windowset's visible set. It would be better, IMHO, if focus were
considered part of the WSGroup. Simply reversing the list of workspaces
should mean that the last greedyView serves to restore focus to the
workspace (and screen) focused-at-group-creation-time.
--- old-XMonadContrib/XMonad/Actions/DynamicWorkspaceGroups.hs 2014-05-06
20:26:25.919864085 -0400
+++ new-XMonadContrib/XMonad/Actions/DynamicWorkspaceGroups.hs 2014-05-06
20:26:26.163865644 -0400
@@ -93,7 +93,7 @@
-- | Give a name to the current workspace group.
addCurrentWSGroup :: WSGroupId -> X ()
addCurrentWSGroup name = withWindowSet $ \w ->
- addWSGroup name $ map (W.tag . W.workspace) (W.current w : W.visible w)
+ addWSGroup name $ map (W.tag . W.workspace) (reverse $ W.current w :
W.visible w)
-- | Delete the named workspace group from the list of workspace
-- groups. Note that this has no effect on the workspaces involved;
A different, equally-defensible behavior, would be to consider the focus to
not be part of the WSGroup and to hold the current focus across the
viewWSGroup operation. A wrapper like this may be useful:
holdScreenFocus a = do
s <- gets (S.screen . S.current . windowset)
r <- a
screenWorkspace s >>= maybe (return ()) (windows . S.view)
return r
Thanks!
--nwf;
--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings
More information about the xmonad
mailing list