diff options
| author | Jochen Keil <jochen.keil@gmail.com> | 2012-09-01 21:36:27 +0200 | 
|---|---|---|
| committer | Jochen Keil <jochen.keil@gmail.com> | 2012-09-01 21:36:27 +0200 | 
| commit | 922dfa2cfac8b546c2a6c76421533f102804bb87 (patch) | |
| tree | f76709b25586e5494f3fddc817c440a413e3d99e /src | |
| parent | acd461339779e281b67d1906e0d208a6ee109a0a (diff) | |
| download | xmobar-922dfa2cfac8b546c2a6c76421533f102804bb87.tar.gz xmobar-922dfa2cfac8b546c2a6c76421533f102804bb87.tar.bz2 | |
Send hide or reveal signal for toggling
This is a more abstract way of implementing the Toggle operation.
Diffstat (limited to 'src')
| -rw-r--r-- | src/Xmobar.hs | 5 | 
1 files changed, 4 insertions, 1 deletions
| diff --git a/src/Xmobar.hs b/src/Xmobar.hs index f531cb4..6be0d0c 100644 --- a/src/Xmobar.hs +++ b/src/Xmobar.hs @@ -176,7 +176,10 @@ eventLoop tv xc@(XConf d _ w fs cfg) signal = do                   $ threadDelay t >> atomically (putTMVar signal $ Reveal 0)              eventLoop tv xc signal -        toggle t = isMapped d w >>= \b -> if b then hide t else reveal t +        toggle t = do +            ismapped <- isMapped d w +            atomically (putTMVar signal $ if ismapped then Hide t else Reveal t) +            eventLoop tv xc signal          reposWindow rcfg = do            r' <- repositionWin d w fs rcfg | 
