-- | -- Module : Main -- Description : Entrypoint -- Copyright : (c) Azat Bahawi 2018-2021 -- SPDX-License-Identifier : GPL-3.0-or-later -- Maintainer : azahi@teknik.io -- Stability : experimental -- Portability : non-portable -- module Main where import XMonad ( Default(def) , XConfig ( borderWidth , clickJustFocuses , focusFollowsMouse , focusedBorderColor , handleEventHook , keys , layoutHook , manageHook , modMask , mouseBindings , normalBorderColor , startupHook , terminal , workspaces ) , xmonad ) import XMonad.Actions.DynamicProjects ( dynamicProjects ) import XMonad.Actions.Navigation2D ( withNavigation2DConfig ) import qualified XMonad.Custom.Bindings as C import qualified XMonad.Custom.Event as C import qualified XMonad.Custom.Layout as C import qualified XMonad.Custom.Manage as C import qualified XMonad.Custom.Misc as C import qualified XMonad.Custom.Navigation as C import qualified XMonad.Custom.Projects as C import qualified XMonad.Custom.Startup as C import qualified XMonad.Custom.Theme as C import qualified XMonad.Custom.Workspaces as C import XMonad.Hooks.EwmhDesktops ( ewmh ) import XMonad.Hooks.ManageDocks ( docks ) import XMonad.Layout.Fullscreen ( fullscreenSupport ) main :: IO () main = xmonad $ ewmh $ fullscreenSupport $ docks $ withNavigation2DConfig C.navigation $ dynamicProjects C.projects $ def { borderWidth = C.border , workspaces = C.workspaces , layoutHook = C.layoutHook , terminal = C.term C.applications , normalBorderColor = C.colorN , focusedBorderColor = C.colorF , modMask = C.modMask , keys = C.keys , startupHook = C.startupHook , mouseBindings = C.mouseBindings , manageHook = C.manageHook , handleEventHook = C.handleEventHook , focusFollowsMouse = False , clickJustFocuses = False }