From b975c0a90dce97c8d96ab464d69575a9d8c150b3 Mon Sep 17 00:00:00 2001 From: azahi Date: Tue, 12 Jun 2018 22:59:58 +0300 Subject: Add X.Custom and split existing code in modules --- src/XMonad/Custom/Manage.hs | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 src/XMonad/Custom/Manage.hs (limited to 'src/XMonad/Custom/Manage.hs') diff --git a/src/XMonad/Custom/Manage.hs b/src/XMonad/Custom/Manage.hs new file mode 100644 index 0000000..09ee651 --- /dev/null +++ b/src/XMonad/Custom/Manage.hs @@ -0,0 +1,44 @@ +module XMonad.Custom.Manage + ( manageHook' + ) where + +import XMonad +import XMonad.Custom.Scratchpads +import XMonad.Hooks.InsertPosition +import XMonad.Hooks.ManageDocks +import XMonad.Hooks.ManageHelpers +import XMonad.Layout.Fullscreen +import XMonad.Util.NamedScratchpad + +composeActions :: [MaybeManageHook] +composeActions = + [ appName =? "emacs-popup" -?> tileBelowNoFocus + , appName =? "eterm" -?> tileBelow + , className =? "Pinentry" -?> doCenterFloat + , className =? "Steam" <&&> not <$> title =? "Steam" -?> doFloat + , className =? "URxvt" -?> tileBelow + , className =? "Xmessage" -?> doCenterFloat + , className =? "Zenity" -?> doCenterFloat + , className =? "explorer.exe" -?> doFullFloat + , className =? "qemu-system-x86" -?> doCenterFloat + , className =? "qemu-system-x86_64" -?> doCenterFloat + , className =? "xterm" -?> tileBelow + , isDialog -?> doCenterFloat + , isFullscreen -?> doFullFloat + , pure True -?> normalTile + , stringProperty "WM_WINDOW_ROLE" =? "pop-up" -?> doCenterFloat + , stringProperty "WM_WINDOW_ROLE" =? "GtkFileChooserDialog" -?> doCenterFloat + , transience + ] + where + normalTile = insertPosition Above Newer + tileBelow = insertPosition Below Newer + tileBelowNoFocus = insertPosition Below Older + + +manageHook' :: ManageHook +manageHook' = mconcat [ manageDocks + , fullscreenManageHook + , namedScratchpadManageHook scratchpads + , composeOne composeActions + ] -- cgit 1.4.1