diff options
author | Karsten Schoelzel <kuser@gmx.de> | 2007-09-10 11:03:29 +0200 |
---|---|---|
committer | Karsten Schoelzel <kuser@gmx.de> | 2007-09-10 11:03:29 +0200 |
commit | df9292b3d2ccb071af89b4576ebddc5f97db71ab (patch) | |
tree | f08c616430400f3d96aa120825da4e27eac8c004 /Main.hs | |
parent | 0ddfabc605c890cda31fe7104cedaa6b6684ed25 (diff) | |
download | xmonad-df9292b3d2ccb071af89b4576ebddc5f97db71ab.tar.gz xmonad-df9292b3d2ccb071af89b4576ebddc5f97db71ab.tar.xz xmonad-df9292b3d2ccb071af89b4576ebddc5f97db71ab.zip |
Fix float behaviour, add shiftWin.
First, if float is called with window which is on a hidden workspace,
then the window will remain on that hidden workspace.
Now the focus should change more as expected:
float w
darcs-hash:20070910090329-eb3a1-ae150bf783b36fb4811e92d81b4917066c8733b7.gz
Diffstat (limited to 'Main.hs')
-rw-r--r-- | Main.hs | 7 |
1 files changed, 2 insertions, 5 deletions
@@ -29,7 +29,7 @@ import Graphics.X11.Xinerama (getScreenInfo) import XMonad import Config -import StackSet (new, floating, member, findIndex, workspace, tag, current, visible) +import StackSet (new, floating, member) import qualified StackSet as W import Operations @@ -226,10 +226,7 @@ handle e@(ConfigureRequestEvent {ev_window = w}) = withDisplay $ \dpy -> do ws <- gets windowset wa <- io $ getWindowAttributes dpy w - -- TODO temporary workaround for some bugs in float. Don't call 'float' on - -- windows that aren't visible, because it changes the focused screen - let vis = any ((== findIndex w ws) . Just . tag . workspace) (current ws : visible ws) - if (M.member w (floating ws) && vis) + if M.member w (floating ws) || not (member w ws) then do io $ configureWindow dpy w (ev_value_mask e) $ WindowChanges { wc_x = ev_x e |