diff options
Diffstat (limited to 'src/Rahm/Desktop/Workspaces.hs')
| -rw-r--r-- | src/Rahm/Desktop/Workspaces.hs | 53 |
1 files changed, 47 insertions, 6 deletions
diff --git a/src/Rahm/Desktop/Workspaces.hs b/src/Rahm/Desktop/Workspaces.hs index 9ddafa5..dc9d317 100644 --- a/src/Rahm/Desktop/Workspaces.hs +++ b/src/Rahm/Desktop/Workspaces.hs @@ -1,17 +1,58 @@ -- Common ways to select workspaces module Rahm.Desktop.Workspaces where -import Control.Arrow (second, (&&&)) -import Control.Monad.Trans.Maybe -import Data.Char (isAlphaNum, isUpper, toLower, toUpper) +import Control.Arrow (Arrow ((&&&))) +import Control.Monad.Trans.Maybe () +import Data.Char (isUpper, toLower, toUpper) import Data.List (find, sort, sortBy, sortOn) import Data.List.Safe ((!!)) import Data.Maybe (fromMaybe, mapMaybe) -import Rahm.Desktop.Common -import Rahm.Desktop.History +import Rahm.Desktop.Common (getCurrentWorkspace, gotoWorkspace) +import Rahm.Desktop.History () import qualified Rahm.Desktop.StackSet as W + ( Screen (Screen, screenDetail, workspace), + StackSet (StackSet, current, visible), + Workspace (Workspace, tag), + integrate', + ) import XMonad -import Prelude hiding ((!!)) + ( Rectangle (Rectangle), + ScreenDetail (SD), + ScreenId, + Window, + WindowSet, + WorkspaceId, + X, + windows, + withWindowSet, + ) +import Prelude + ( Bool (..), + Enum, + Eq (..), + Foldable (elem), + Functor (fmap), + Int, + Maybe (..), + Monad (return), + Ord (compare), + String, + const, + filter, + flip, + fst, + head, + last, + map, + maybe, + reverse, + snd, + ($), + (++), + (.), + (<$>), + (=<<), + ) newtype Selector = Selector (forall a. (a -> Bool) -> [a] -> Maybe a) |