diff options
| -rw-r--r-- | src/Xmobar.hs | 16 | 
1 files changed, 11 insertions, 5 deletions
| diff --git a/src/Xmobar.hs b/src/Xmobar.hs index ab8de0a..2358a20 100644 --- a/src/Xmobar.hs +++ b/src/Xmobar.hs @@ -82,8 +82,10 @@ startLoop :: XConf -> [[(Maybe ThreadId, TVar String)]] -> IO ()  startLoop xcfg@(XConf _ _ w _ _) vs = do      tv <- atomically $ newTVar []      sig <- setupSignalHandler -    _ <- forkIO (checker tv [] vs sig `catch` \(SomeException _) -> putStrLn "Thread checker failed" >> return ()) -    _ <- forkIO (eventer sig `catch` \(SomeException _) -> putStrLn "Thread eventer failed" >> return ()) +    _ <- forkIO (checker tv [] vs sig `catch` +                   \(SomeException _) -> void (putStrLn "Thread checker failed")) +    _ <- forkIO (eventer sig `catch` +                   \(SomeException _) -> void (putStrLn "Thread eventer failed"))      eventLoop tv xcfg sig    where      -- Reacts on events from X @@ -104,7 +106,11 @@ startLoop xcfg@(XConf _ _ w _ _) vs = do              _ -> return ()  -- | Send signal to eventLoop every time a var is updated -checker :: TVar [String] -> [String] -> [[(Maybe ThreadId, TVar String)]] -> MVar SignalType -> IO () +checker :: TVar [String] +           -> [String] +           -> [[(Maybe ThreadId, TVar String)]] +           -> MVar SignalType +           -> IO ()  checker tvar ov vs signal = do        nval <- atomically $ do                nv <- mapM concatV vs @@ -233,7 +239,7 @@ setPosition p rs ht =      ax L     = const rx      ax R     = right      ax C     = center -    pw i     = rw * (min 100 i) `div` 100 +    pw i     = rw * min 100 i `div` 100      nw       = fi . pw . fi      h        = fi ht      mh h'    = max (fi h') h @@ -273,7 +279,7 @@ getStrutValues r@(Rectangle x y w h) p rwh =      Bottom          -> [0, 0,  0, sb, 0, 0, 0, 0,  0,  0, nx, nw]      BottomW _ _     -> [0, 0,  0, sb, 0, 0, 0, 0,  0,  0, nx, nw]      BottomSize   {} -> [0, 0,  0, sb, 0, 0, 0, 0,  0,  0, nx, nw] -    Static _ _ _ _  -> getStaticStrutValues p rwh +    Static       {} -> getStaticStrutValues p rwh      where st = fi y + fi h            sb = rwh - fi y            nx = fi x | 
