From ee9be16599f20aef6d1d3fd15666c00452f85aba Mon Sep 17 00:00:00 2001 From: Josh Rahm Date: Mon, 21 Nov 2022 12:05:03 -0700 Subject: Format with ormolu. --- src/Rahm/Desktop/Common.hs | 68 ++++++++++++++++++++++++---------------------- 1 file changed, 35 insertions(+), 33 deletions(-) (limited to 'src/Rahm/Desktop/Common.hs') diff --git a/src/Rahm/Desktop/Common.hs b/src/Rahm/Desktop/Common.hs index 3e6d54c..e012a8f 100644 --- a/src/Rahm/Desktop/Common.hs +++ b/src/Rahm/Desktop/Common.hs @@ -1,59 +1,61 @@ module Rahm.Desktop.Common where -import Prelude hiding ((!!)) - -import Control.Monad (void, when, forM_) +import Control.Monad (forM_, void, when) import Control.Monad.Trans.Maybe -import XMonad.Util.Run -import XMonad.Prompt -import XMonad.Prompt.Input -import XMonad.Prompt.Shell -import XMonad.Util.XUtils - -import Rahm.Desktop.PromptConfig - import Data.Char import Data.List hiding ((!!)) import Data.List.Safe ((!!)) -import Data.Maybe -import Text.Printf -import XMonad hiding (workspaces, Screen) import qualified Data.Map as Map -import Rahm.Desktop.DMenu +import Data.Maybe import Data.Ord (comparing) - +import Rahm.Desktop.DMenu +import Rahm.Desktop.PromptConfig import qualified Rahm.Desktop.StackSet as S +import Text.Printf +import XMonad hiding (Screen, workspaces) +import XMonad.Prompt +import XMonad.Prompt.Input +import XMonad.Prompt.Shell +import XMonad.Util.Run +import XMonad.Util.XUtils +import Prelude hiding ((!!)) -- A location is a workspace and maybe a window with that workspace. -data Location = Location { - locationWorkspace :: WorkspaceId, +data Location = Location + { locationWorkspace :: WorkspaceId, locationWindow :: Maybe Window - } deriving (Read, Show, Eq, Ord) + } + deriving (Read, Show, Eq, Ord) focusLocation :: Location -> X () focusLocation (Location ws Nothing) = windows $ S.greedyView ws focusLocation (Location _ (Just win)) = windows $ S.focusWindow win masterWindow :: MaybeT X Window -masterWindow = MaybeT $ withWindowSet $ \ss -> - let windows = (S.integrate' . S.stack . S.workspace . S.current) ss - in case windows of - (a:_) -> return $ Just a - _ -> return Nothing +masterWindow = MaybeT $ + withWindowSet $ \ss -> + let windows = (S.integrate' . S.stack . S.workspace . S.current) ss + in case windows of + (a : _) -> return $ Just a + _ -> return Nothing windowsInWorkspace :: WorkspaceId -> X [Location] windowsInWorkspace wid = withWindowSet $ - return . concatMap (\ws -> - if S.tag ws == wid - then map (Location wid . Just) $ S.integrate' (S.stack ws) - else []) . S.workspaces + return + . concatMap + ( \ws -> + if S.tag ws == wid + then map (Location wid . Just) $ S.integrate' (S.stack ws) + else [] + ) + . S.workspaces data WinPrompt = WinPrompt instance XPrompt WinPrompt where - showXPrompt _ = "[Window] " - commandToComplete _ = id + showXPrompt _ = "[Window] " + commandToComplete _ = id getString :: Window -> X String getString = runQuery $ do @@ -107,7 +109,7 @@ withBorderWidth width ws fn = do forM_ ws $ \window -> io $ setWindowBorderWidth d window $ fromIntegral width - ret <- fn + ret <- fn forM_ ws $ \window -> io $ setWindowBorderWidth d window 2 @@ -119,7 +121,7 @@ withBorderWidth width ws fn = do gotoWorkspace :: WorkspaceId -> X () gotoWorkspace wid = windows $ S.greedyView wid -moveLocationToWorkspace :: Location -> WorkspaceId -> X () +moveLocationToWorkspace :: Location -> WorkspaceId -> X () moveLocationToWorkspace (Location _ (Just win)) wid = windows $ S.shiftWin wid win moveLocationToWorkspace _ _ = return () @@ -136,4 +138,4 @@ getCurrentLocation = do return (Location ws win) runMaybeT_ :: (Monad m) => MaybeT m a -> m () -runMaybeT_ = void . runMaybeT +runMaybeT_ = void . runMaybeT -- cgit