summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Main.hs10
1 files changed, 9 insertions, 1 deletions
diff --git a/Main.hs b/Main.hs
index 68d82d4..24f7b89 100644
--- a/Main.hs
+++ b/Main.hs
@@ -69,7 +69,11 @@ main = do
runW initState $ do
r <- io $ rootWindow dpy dflt
- io $ do selectInput dpy r (substructureRedirectMask .|. substructureNotifyMask)
+ io $ do selectInput dpy r $ substructureRedirectMask
+ .|. substructureNotifyMask
+ .|. enterWindowMask
+ .|. leaveWindowMask
+
sync dpy False
grabKeys dpy r
(_, _, ws) <- io $ queryTree dpy r
@@ -111,6 +115,10 @@ handle (MapRequestEvent {window = w}) = withDisplay $ \dpy -> do
wa <- io $ getWindowAttributes dpy w
when (not (waOverrideRedirect wa)) $ manage w
+-- XCreateWindowEvent(3X11)
+-- Window manager clients normally should ignore this window if the
+-- override_redirect member is True.
+
handle (DestroyWindowEvent {window = w}) = unmanage w
handle (UnmapEvent {window = w}) = unmanage w