From 85fdac20a36675559802dd215a81f640b91693fe Mon Sep 17 00:00:00 2001 From: Jose Antonio Ortega Ruiz Date: Wed, 5 Jun 2013 00:23:32 +0200 Subject: Stripping actions in stdin and xprop plugins --- src/Plugins/StdinReader.hs | 19 ++++++++++--------- src/Plugins/XMonadLog.hs | 8 +++++--- 2 files changed, 15 insertions(+), 12 deletions(-) (limited to 'src/Plugins') diff --git a/src/Plugins/StdinReader.hs b/src/Plugins/StdinReader.hs index fddd0bc..f242f93 100644 --- a/src/Plugins/StdinReader.hs +++ b/src/Plugins/StdinReader.hs @@ -20,15 +20,16 @@ import System.Exit import System.IO import Control.Exception (SomeException(..), handle) import Plugins +import Actions (stripActions) -data StdinReader = StdinReader - deriving (Read, Show) +data StdinReader = StdinReader deriving (Read, Show) instance Exec StdinReader where - start StdinReader cb = do - cb =<< handle (\(SomeException e) -> do hPrint stderr e; return "") - (hGetLineSafe stdin) - eof <- hIsEOF stdin - if eof - then exitImmediately ExitSuccess - else start StdinReader cb + start StdinReader cb = do + s <- handle (\(SomeException e) -> do hPrint stderr e; return "") + (hGetLineSafe stdin) + cb (stripActions s) + eof <- hIsEOF stdin + if eof + then exitImmediately ExitSuccess + else start StdinReader cb diff --git a/src/Plugins/XMonadLog.hs b/src/Plugins/XMonadLog.hs index 1403800..8f63dc9 100644 --- a/src/Plugins/XMonadLog.hs +++ b/src/Plugins/XMonadLog.hs @@ -28,9 +28,11 @@ import Codec.Binary.UTF8.String as UTF8 #endif import Foreign.C (CChar) import XUtil (nextEvent') +import Actions (stripActions) - -data XMonadLog = XMonadLog | XPropertyLog String | NamedXPropertyLog String String +data XMonadLog = XMonadLog + | XPropertyLog String + | NamedXPropertyLog String String deriving (Read, Show) instance Exec XMonadLog where @@ -51,7 +53,7 @@ instance Exec XMonadLog where let update = do mwp <- getWindowProperty8 d xlog root - maybe (return ()) (cb . decodeCChar) mwp + maybe (return ()) (cb . stripActions. decodeCChar) mwp update -- cgit v1.2.3