summaryrefslogtreecommitdiffstats
path: root/MetaTile/Main.hsc
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2013-09-12 21:08:13 +0200
committerMatthias Schiffer <mschiffer@universe-factory.net>2013-09-12 21:08:13 +0200
commit3bf5609453485e8b20a75797994ff3b64d8c60ed (patch)
treebaf5eea0458537c5fdf217847e850fe305303c10 /MetaTile/Main.hsc
parent29e342c4985744cc2538d85cdbb248e6dd5f5ff8 (diff)
downloadmetatile-3bf5609453485e8b20a75797994ff3b64d8c60ed.tar
metatile-3bf5609453485e8b20a75797994ff3b64d8c60ed.zip
Split up window and frame state
Diffstat (limited to 'MetaTile/Main.hsc')
-rw-r--r--MetaTile/Main.hsc3
1 files changed, 3 insertions, 0 deletions
diff --git a/MetaTile/Main.hsc b/MetaTile/Main.hsc
index abdb75c..426e78f 100644
--- a/MetaTile/Main.hsc
+++ b/MetaTile/Main.hsc
@@ -126,6 +126,7 @@ metatile initxmc = do
{ windowset = initialWinset
, numberlockMask = 0
, windowState = M.empty
+ , frameState = M.empty
, dragging = Nothing
, extensibleState = extState
}
@@ -323,6 +324,7 @@ reparent w = withDisplay $ \dpy -> do
addToSaveSet dpy w
reparentWindow dpy w frame 0 0
modifyWindowState (\ws -> ws { wsFrame = frame }) w
+ setFrameState frame $ FrameState { fsWindow = w, fsBorderWidth = BorderWidth 0 0 0 0 }
hideParent :: Window -> X ()
hideParent w = withDisplay $ \dpy -> do
@@ -336,6 +338,7 @@ unparent w = withDisplay $ \dpy -> do
trace $ "unparent: " ++ show w
io $ destroyWindow dpy frame
modifyWindowState (\ws -> ws { wsFrame = none }) w
+ deleteFrameState frame
-- ---------------------------------------------------------------------
-- IO stuff. Doesn't require any X state