aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--XMonad/Hooks/DebugEvents.hs2
-rw-r--r--XMonad/Util/Invisible.hs4
-rw-r--r--XMonad/Util/WindowState.hs4
3 files changed, 7 insertions, 3 deletions
diff --git a/XMonad/Hooks/DebugEvents.hs b/XMonad/Hooks/DebugEvents.hs
index a038b6c..753dc1f 100644
--- a/XMonad/Hooks/DebugEvents.hs
+++ b/XMonad/Hooks/DebugEvents.hs
@@ -47,6 +47,7 @@ import Numeric (showHex)
import System.Exit
import System.IO
import System.Process
+import Control.Applicative
-- | Event hook to dump all received events. You should probably not use this
-- unconditionally; it will produce massive amounts of output.
@@ -270,6 +271,7 @@ data DecodeState = DecS {value :: Raw -- unconsumed raw property value
newtype Decoder a = Decoder (ReaderT Decode (StateT DecodeState X) a)
#ifndef __HADDOCK__
deriving (Functor
+ ,Applicative
,Monad
,MonadIO
,MonadState DecodeState
diff --git a/XMonad/Util/Invisible.hs b/XMonad/Util/Invisible.hs
index fc18180..2fa8b2b 100644
--- a/XMonad/Util/Invisible.hs
+++ b/XMonad/Util/Invisible.hs
@@ -22,13 +22,15 @@ module XMonad.Util.Invisible (
, fromIMaybe
) where
+import Control.Applicative
+
-- $usage
-- A wrapper data type to store layout state that shouldn't be persisted across
-- restarts. A common wrapped type to use is @Maybe a@.
-- Invisible derives trivial definitions for Read and Show, so the wrapped data
-- type need not do so.
-newtype Invisible m a = I (m a) deriving (Monad, Functor)
+newtype Invisible m a = I (m a) deriving (Monad, Applicative, Functor)
instance (Functor m, Monad m) => Read (Invisible m a) where
readsPrec _ s = [(fail "Read Invisible", s)]
diff --git a/XMonad/Util/WindowState.hs b/XMonad/Util/WindowState.hs
index 5b19a20..4ffc93e 100644
--- a/XMonad/Util/WindowState.hs
+++ b/XMonad/Util/WindowState.hs
@@ -26,7 +26,7 @@ import XMonad hiding (get, put, modify)
import Control.Monad.Reader(ReaderT(..))
import Control.Monad.State.Class
import Data.Typeable (Typeable, typeOf)
-import Control.Applicative((<$>))
+import Control.Applicative((<$>), Applicative)
-- $usage
--
-- This module allow to store state data with some 'Window'.
@@ -54,7 +54,7 @@ import Control.Applicative((<$>))
-- window.
newtype StateQuery s a = StateQuery {
getQuery :: Query a
- } deriving (Monad, MonadIO, Functor)
+ } deriving (Monad, MonadIO, Applicative, Functor)
packIntoQuery :: (Window -> X a) -> Query a
packIntoQuery = Query . ReaderT