aboutsummaryrefslogtreecommitdiff
path: root/src/Rahm/Desktop/Layout
diff options
context:
space:
mode:
authorJosh Rahm <joshuarahm@gmail.com>2022-11-23 00:26:58 -0700
committerJosh Rahm <joshuarahm@gmail.com>2022-11-23 00:26:58 -0700
commit1f25484605881af1a8e1475565d2ceb20b88ea85 (patch)
tree0dcdb9a3814d51779f7b9aedd39ae516b540f54b /src/Rahm/Desktop/Layout
parent80021afcb29332cfddbd8f7d24a107298064383c (diff)
downloadrde-1f25484605881af1a8e1475565d2ceb20b88ea85.tar.gz
rde-1f25484605881af1a8e1475565d2ceb20b88ea85.tar.bz2
rde-1f25484605881af1a8e1475565d2ceb20b88ea85.zip
Change to use minimal imports.
This is achieved by using `stack build --ghc-options=-ddump-minimal-imports` and looking for the *.imports files.
Diffstat (limited to 'src/Rahm/Desktop/Layout')
-rw-r--r--src/Rahm/Desktop/Layout/ConsistentMosaic.hs22
-rw-r--r--src/Rahm/Desktop/Layout/Draw.hs21
-rw-r--r--src/Rahm/Desktop/Layout/Flip.hs11
-rw-r--r--src/Rahm/Desktop/Layout/Hole.hs9
-rw-r--r--src/Rahm/Desktop/Layout/List.hs13
-rw-r--r--src/Rahm/Desktop/Layout/Pop.hs16
-rw-r--r--src/Rahm/Desktop/Layout/Redescribe.hs7
-rw-r--r--src/Rahm/Desktop/Layout/Rotate.hs12
8 files changed, 94 insertions, 17 deletions
diff --git a/src/Rahm/Desktop/Layout/ConsistentMosaic.hs b/src/Rahm/Desktop/Layout/ConsistentMosaic.hs
index 0d95c8f..026a7dd 100644
--- a/src/Rahm/Desktop/Layout/ConsistentMosaic.hs
+++ b/src/Rahm/Desktop/Layout/ConsistentMosaic.hs
@@ -4,13 +4,29 @@
-- still work as expected.
module Rahm.Desktop.Layout.ConsistentMosaic where
-import Data.Map (Map)
-import qualified Data.Map as Map
+import Data.Map ()
+import qualified Data.Map as Map (fromList, lookup)
import Data.Maybe (mapMaybe)
-import Rahm.Desktop.Logger
+import Rahm.Desktop.Logger ()
import qualified Rahm.Desktop.StackSet as W
+ ( Screen (..),
+ Stack (..),
+ StackSet (..),
+ Workspace (..),
+ integrate,
+ )
import XMonad
+ ( LayoutClass (description, handleMessage, runLayout),
+ MonadState (..),
+ Window,
+ X,
+ XState (..),
+ )
import XMonad.Layout.MosaicAlt
+ ( HandleWindowAlt,
+ expandWindowAlt,
+ shrinkWindowAlt,
+ )
newtype MosaicWrap l a = MosaicWrap (l a) deriving (Read, Show)
diff --git a/src/Rahm/Desktop/Layout/Draw.hs b/src/Rahm/Desktop/Layout/Draw.hs
index 49921b0..95a34eb 100644
--- a/src/Rahm/Desktop/Layout/Draw.hs
+++ b/src/Rahm/Desktop/Layout/Draw.hs
@@ -6,15 +6,20 @@
module Rahm.Desktop.Layout.Draw (drawLayout) where
import Control.Arrow (second)
-import Control.Concurrent (threadDelay)
-import Control.Exception (handle)
-import Control.Monad
+import Control.Concurrent ()
+import Control.Exception ()
+import Control.Monad (foldM, forM_, unless)
import Control.Monad.Writer (execWriter, tell)
import Data.Foldable (find)
import Data.Maybe (fromMaybe)
import Rahm.Desktop.Hash (quickHash)
import Rahm.Desktop.Layout.Pop (setPop)
import qualified Rahm.Desktop.StackSet as S
+ ( Screen (..),
+ StackSet (..),
+ Workspace (..),
+ differentiate,
+ )
import System.Directory (createDirectoryIfMissing, doesFileExist)
import System.FilePath ((</>))
import Text.Printf (printf)
@@ -28,7 +33,15 @@ import XMonad
X,
)
import qualified XMonad as X
-import XMonad.Layout.MosaicAlt (expandWindowAlt, shrinkWindowAlt)
+ ( Directories' (cfgDir),
+ LayoutClass (description, handleMessage, runLayout),
+ MonadIO (liftIO),
+ XConf (directories),
+ XState (windowset),
+ asks,
+ gets,
+ )
+import XMonad.Layout.MosaicAlt (expandWindowAlt)
import XMonad.Layout.Spacing (Border (..), SpacingModifier (..))
-- Draws and returns an XPM for the current layout.
diff --git a/src/Rahm/Desktop/Layout/Flip.hs b/src/Rahm/Desktop/Layout/Flip.hs
index 5942a4a..8ebe9ac 100644
--- a/src/Rahm/Desktop/Layout/Flip.hs
+++ b/src/Rahm/Desktop/Layout/Flip.hs
@@ -11,10 +11,19 @@ module Rahm.Desktop.Layout.Flip
where
import Control.Arrow (second)
-import Data.Default (Default (..))
+import Data.Default ()
import Data.List (intercalate)
import XMonad
+ ( Default (..),
+ LayoutClass (description),
+ Message,
+ Rectangle (Rectangle),
+ fromMessage,
+ )
import XMonad.Layout.LayoutModifier
+ ( LayoutModifier (modifyDescription, pureMess, pureModifier),
+ ModifiedLayout (..),
+ )
-- A flipped layout is either flipped horizontally or vertically.
data Flip a = Flip
diff --git a/src/Rahm/Desktop/Layout/Hole.hs b/src/Rahm/Desktop/Layout/Hole.hs
index 42bac48..7f19e4c 100644
--- a/src/Rahm/Desktop/Layout/Hole.hs
+++ b/src/Rahm/Desktop/Layout/Hole.hs
@@ -4,9 +4,16 @@
-- Delegates to a lower layout, but leaves a hole where the next window will go.
module Rahm.Desktop.Layout.Hole (hole, toggleHole) where
-import Data.Maybe (mapMaybe)
+import Data.Maybe ()
import qualified Rahm.Desktop.StackSet as W
+ ( Stack (Stack),
+ Workspace (Workspace),
+ )
import XMonad
+ ( LayoutClass (handleMessage, runLayout),
+ Message,
+ fromMessage,
+ )
data Hole (l :: * -> *) (a :: *) = Hole Bool (l a)
diff --git a/src/Rahm/Desktop/Layout/List.hs b/src/Rahm/Desktop/Layout/List.hs
index 787697e..48c2ab5 100644
--- a/src/Rahm/Desktop/Layout/List.hs
+++ b/src/Rahm/Desktop/Layout/List.hs
@@ -28,11 +28,18 @@ import Control.Applicative ((<|>))
import Control.Arrow (second, (>>>))
import Control.Monad.Identity (runIdentity)
import Data.Maybe (fromJust, fromMaybe)
-import Data.Proxy
-import Data.Void
-import GHC.TypeLits
+import Data.Proxy (Proxy (..))
+import Data.Void ()
+import GHC.TypeLits (KnownNat, Nat, natVal, type (+))
import qualified Rahm.Desktop.StackSet as W
+ ( Workspace (Workspace),
+ )
import XMonad
+ ( LayoutClass (description, handleMessage, runLayout),
+ Message,
+ Typeable,
+ fromMessage,
+ )
-- Type-level lists. LNil is the final of the list. LCons contains a layout and a
-- tail.
diff --git a/src/Rahm/Desktop/Layout/Pop.hs b/src/Rahm/Desktop/Layout/Pop.hs
index b518ee8..ee277fb 100644
--- a/src/Rahm/Desktop/Layout/Pop.hs
+++ b/src/Rahm/Desktop/Layout/Pop.hs
@@ -14,11 +14,21 @@ module Rahm.Desktop.Layout.Pop
)
where
-import Data.Default (Default (..))
-import Rahm.Desktop.Layout.ReinterpretMessage
+import Data.Default ()
+import Rahm.Desktop.Layout.ReinterpretMessage ()
import qualified Rahm.Desktop.StackSet as W
+ ( Stack (focus),
+ Workspace (Workspace),
+ )
import XMonad
-import XMonad.Layout.LayoutModifier (LayoutModifier (..), ModifiedLayout (..))
+ ( LayoutClass (handleMessage, runLayout),
+ Message,
+ Rectangle (Rectangle),
+ Resize (Expand, Shrink),
+ SomeMessage (SomeMessage),
+ fromMessage,
+ )
+import XMonad.Layout.LayoutModifier ()
data Poppable (l :: * -> *) (a :: *) = Poppable
{ -- True if the current window is popped out or not.
diff --git a/src/Rahm/Desktop/Layout/Redescribe.hs b/src/Rahm/Desktop/Layout/Redescribe.hs
index f5e51b7..4a1a918 100644
--- a/src/Rahm/Desktop/Layout/Redescribe.hs
+++ b/src/Rahm/Desktop/Layout/Redescribe.hs
@@ -3,9 +3,14 @@
-- to generate the new description.
module Rahm.Desktop.Layout.Redescribe where
-import Data.Typeable (Typeable)
+import Data.Typeable ()
import qualified Rahm.Desktop.StackSet as W
+ ( Workspace (Workspace),
+ )
import XMonad
+ ( LayoutClass (description, handleMessage, runLayout),
+ Typeable,
+ )
-- Type-class to modify the description of a layout.
class Describer m l where
diff --git a/src/Rahm/Desktop/Layout/Rotate.hs b/src/Rahm/Desktop/Layout/Rotate.hs
index e6f9a64..467ed96 100644
--- a/src/Rahm/Desktop/Layout/Rotate.hs
+++ b/src/Rahm/Desktop/Layout/Rotate.hs
@@ -11,9 +11,19 @@ module Rahm.Desktop.Layout.Rotate
where
import Control.Arrow (second)
-import Data.Default (Default (..))
+import Data.Default ()
import XMonad
+ ( Default (..),
+ LayoutClass (description),
+ Message,
+ Rectangle (Rectangle),
+ fromMessage,
+ mirrorRect,
+ )
import XMonad.Layout.LayoutModifier
+ ( LayoutModifier (modifyDescription, pureMess, pureModifier),
+ ModifiedLayout (..),
+ )
-- Just a wrapper over a Bool.
newtype Rotate a = Rotate Bool