From b2d9ca5a587c62ee38d04766689f19d3d4a13c1b Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 17 Sep 2021 11:31:56 -0700 Subject: Let xmobar be used with a signal TMVar when used from other haskell. --- src/Xmobar/System/Signal.hs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/Xmobar/System') diff --git a/src/Xmobar/System/Signal.hs b/src/Xmobar/System/Signal.hs index ce39e10..3983654 100644 --- a/src/Xmobar/System/Signal.hs +++ b/src/Xmobar/System/Signal.hs @@ -60,12 +60,11 @@ parseSignalType :: String -> Maybe SignalType parseSignalType = fmap fst . safeHead . reads -- | Signal handling -setupSignalHandler :: IO (TMVar SignalType) -setupSignalHandler = do - tid <- newEmptyTMVarIO +setupSignalHandler :: TMVar SignalType -> IO () +setupSignalHandler tid = do installHandler sigUSR2 (Catch $ updatePosHandler tid) Nothing installHandler sigUSR1 (Catch $ changeScreenHandler tid) Nothing - return tid + return () updatePosHandler :: TMVar SignalType -> IO () updatePosHandler sig = do -- cgit v1.2.3