aboutsummaryrefslogtreecommitdiff
path: root/src/Rahm/Desktop/XMobarLog/PendingBuffer.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Rahm/Desktop/XMobarLog/PendingBuffer.hs')
-rw-r--r--src/Rahm/Desktop/XMobarLog/PendingBuffer.hs17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/Rahm/Desktop/XMobarLog/PendingBuffer.hs b/src/Rahm/Desktop/XMobarLog/PendingBuffer.hs
index 28ba9a8..67ae6a3 100644
--- a/src/Rahm/Desktop/XMobarLog/PendingBuffer.hs
+++ b/src/Rahm/Desktop/XMobarLog/PendingBuffer.hs
@@ -8,6 +8,7 @@ module Rahm.Desktop.XMobarLog.PendingBuffer
)
where
+import Rahm.Desktop.Common
import Data.Default (Default (..))
import XMonad (X)
import qualified XMonad as X
@@ -54,14 +55,14 @@ clearPendingBuffer = do
getPendingBuffer :: X [Char]
getPendingBuffer = unPendingBuffer <$> XS.get
-pushPendingBuffer :: String -> X a -> X a
+pushPendingBuffer :: (Xish x) => String -> x a -> x a
pushPendingBuffer newPendingBuffer fn = do
- saved <- getPendingBuffer
- setPendingBuffer newPendingBuffer
- fn <* setPendingBuffer saved
+ saved <- liftFromX getPendingBuffer
+ liftFromX $ setPendingBuffer newPendingBuffer
+ fn <* liftFromX (setPendingBuffer saved)
-pushAddPendingBuffer :: String -> X a -> X a
+pushAddPendingBuffer :: (Xish x) => String -> x a -> x a
pushAddPendingBuffer toAdd fn = do
- saved <- getPendingBuffer
- setPendingBuffer (saved ++ toAdd)
- fn <* setPendingBuffer saved
+ saved <- liftFromX getPendingBuffer
+ liftFromX $ setPendingBuffer (saved ++ toAdd)
+ fn <* liftFromX (setPendingBuffer saved)