summaryrefslogtreecommitdiffstats
path: root/Operations.hs
diff options
context:
space:
mode:
authorKarsten Schoelzel <kuser@gmx.de>2007-09-10 13:38:35 +0200
committerKarsten Schoelzel <kuser@gmx.de>2007-09-10 13:38:35 +0200
commitc8f468802e71ec61ea8c92e829a09a764355949f (patch)
tree9c7cb8c119d3b90f14e3f0a01bcf6f45771ad7be /Operations.hs
parentd1b849f806a2dac21827449f84c62da6c857d9bd (diff)
downloadmetatile-c8f468802e71ec61ea8c92e829a09a764355949f.tar
metatile-c8f468802e71ec61ea8c92e829a09a764355949f.zip
Add delete' for use in shift
Rename delete to delete' so we can clear floating status in delete, thus removing one special handling. At the moment delete' is only used in shift, but is useful for temporarily removing a window from the stack. darcs-hash:20070910113835-eb3a1-39397766e3c6b9428f69cd8c1bd316cdd20cedcb
Diffstat (limited to 'Operations.hs')
-rw-r--r--Operations.hs6
1 files changed, 1 insertions, 5 deletions
diff --git a/Operations.hs b/Operations.hs
index 9d20841..d7f6639 100644
--- a/Operations.hs
+++ b/Operations.hs
@@ -66,15 +66,11 @@ manage w = whenX (fmap not $ isClient w) $ withDisplay $ \d -> do
-- | unmanage. A window no longer exists, remove it from the window
-- list, on whatever workspace it is.
--
--- FIXME: clearFloating should be taken care of in W.delete, but if we do it
--- there, floating status is lost when moving windows between workspaces,
--- because W.shift calls W.delete.
---
-- should also unmap?
--
unmanage :: Window -> X ()
unmanage w = do
- windows (W.sink w . W.delete w)
+ windows (W.delete w)
setWMState w 0 {-withdrawn-}
modify (\s -> s {mapped = S.delete w (mapped s), waitingUnmap = M.delete w (waitingUnmap s)})