diff options
author | Spencer Janssen <sjanssen@cse.unl.edu> | 2007-06-04 01:47:30 +0200 |
---|---|---|
committer | Spencer Janssen <sjanssen@cse.unl.edu> | 2007-06-04 01:47:30 +0200 |
commit | 70745502cf6771981a2a89281a06d4fa194ecaa0 (patch) | |
tree | f60ffe8af1d45822a8c8bf441c7c4752eeca6a2a | |
parent | 2efd0286c28fa10ad32111339a2fad55634c481f (diff) | |
download | metatile-70745502cf6771981a2a89281a06d4fa194ecaa0.tar metatile-70745502cf6771981a2a89281a06d4fa194ecaa0.zip |
Honor configure requests from unmanaged windows
darcs-hash:20070603234730-a5988-d156b988188c622428ef60456c7e48bd739e5f64
-rw-r--r-- | Main.hs | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -26,7 +26,7 @@ import Graphics.X11.Xinerama (getScreenInfo) import XMonad import Config -import StackSet (new, floating) +import StackSet (new, floating, member) import Operations -- @@ -183,10 +183,10 @@ handle e@(CrossingEvent {ev_event_type = t}) -- configure a window handle e@(ConfigureRequestEvent {ev_window = w}) = withDisplay $ \dpy -> do - f <- gets $ M.member w . floating . windowset + ws <- gets windowset wa <- io $ getWindowAttributes dpy w - if f + 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 , wc_y = ev_y e @@ -195,7 +195,7 @@ handle e@(ConfigureRequestEvent {ev_window = w}) = withDisplay $ \dpy -> do , wc_border_width = fromIntegral borderWidth , wc_sibling = ev_above e , wc_stack_mode = ev_detail e } - float w + when (member w ws) (float w) else io $ allocaXEvent $ \ev -> do setEventType ev configureNotify setConfigureEvent ev w w |