{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
module XMonad.Config.Kde (
kdeConfig,
kde4Config,
desktopLayoutModifiers
) where
import XMonad
import XMonad.Config.Desktop
import qualified Data.Map as M
kdeConfig :: XConfig
(ModifiedLayout
AvoidStruts (Choose Tall (Choose (Mirror Tall) Full)))
kdeConfig = XConfig
(ModifiedLayout
AvoidStruts (Choose Tall (Choose (Mirror Tall) Full)))
desktopConfig
{ terminal :: String
terminal = String
"konsole"
, keys :: XConfig Layout -> Map (ButtonMask, KeySym) (X ())
keys = forall {m :: * -> *} {l :: * -> *}.
MonadIO m =>
XConfig l -> Map (ButtonMask, KeySym) (m ())
kdeKeys forall a. Semigroup a => a -> a -> a
<> forall (l :: * -> *).
XConfig l -> XConfig Layout -> Map (ButtonMask, KeySym) (X ())
keys XConfig
(ModifiedLayout
AvoidStruts (Choose Tall (Choose (Mirror Tall) Full)))
desktopConfig }
kde4Config :: XConfig
(ModifiedLayout
AvoidStruts (Choose Tall (Choose (Mirror Tall) Full)))
kde4Config = XConfig
(ModifiedLayout
AvoidStruts (Choose Tall (Choose (Mirror Tall) Full)))
desktopConfig
{ terminal :: String
terminal = String
"konsole"
, keys :: XConfig Layout -> Map (ButtonMask, KeySym) (X ())
keys = forall {m :: * -> *} {l :: * -> *}.
MonadIO m =>
XConfig l -> Map (ButtonMask, KeySym) (m ())
kde4Keys forall a. Semigroup a => a -> a -> a
<> forall (l :: * -> *).
XConfig l -> XConfig Layout -> Map (ButtonMask, KeySym) (X ())
keys XConfig
(ModifiedLayout
AvoidStruts (Choose Tall (Choose (Mirror Tall) Full)))
desktopConfig }
kdeKeys :: XConfig l -> Map (ButtonMask, KeySym) (m ())
kdeKeys XConfig{modMask :: forall (l :: * -> *). XConfig l -> ButtonMask
modMask = ButtonMask
modm} = forall k a. Ord k => [(k, a)] -> Map k a
M.fromList
[ ((ButtonMask
modm, KeySym
xK_p), forall (m :: * -> *). MonadIO m => String -> m ()
spawn String
"dcop kdesktop default popupExecuteCommand")
, ((ButtonMask
modm forall a. Bits a => a -> a -> a
.|. ButtonMask
shiftMask, KeySym
xK_q), forall (m :: * -> *). MonadIO m => String -> m ()
spawn String
"dcop kdesktop default logout")
]
kde4Keys :: XConfig l -> Map (ButtonMask, KeySym) (m ())
kde4Keys XConfig{modMask :: forall (l :: * -> *). XConfig l -> ButtonMask
modMask = ButtonMask
modm} = forall k a. Ord k => [(k, a)] -> Map k a
M.fromList
[ ((ButtonMask
modm, KeySym
xK_p), forall (m :: * -> *). MonadIO m => String -> m ()
spawn String
"krunner")
, ((ButtonMask
modm forall a. Bits a => a -> a -> a
.|. ButtonMask
shiftMask, KeySym
xK_q), forall (m :: * -> *). MonadIO m => String -> m ()
spawn String
"dbus-send --print-reply --dest=org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout int32:1 int32:0 int32:1")
]