aboutsummaryrefslogtreecommitdiffstats
path: root/XMonad.hs
diff options
context:
space:
mode:
authorDon Stewart <dons@cse.unsw.edu.au>2007-04-19 03:27:05 +0200
committerDon Stewart <dons@cse.unsw.edu.au>2007-04-19 03:27:05 +0200
commitf96b482efd7b989403a73c1ede225889009e47dd (patch)
tree252fabb66dc4f148f2cad2643453eb6f1cbb87cf /XMonad.hs
parent9478ed6fa9872e84b7d2cfe631623d0e1b890d5b (diff)
downloadxmonad-f96b482efd7b989403a73c1ede225889009e47dd.tar.gz
xmonad-f96b482efd7b989403a73c1ede225889009e47dd.tar.xz
xmonad-f96b482efd7b989403a73c1ede225889009e47dd.zip
Parameterise StackSet by two index types, rather than breaking abstraction
darcs-hash:20070419012705-9c5c1-3aa97e02123af08c3f4500c9e9c3bb7ab4121652.gz
Diffstat (limited to '')
-rw-r--r--XMonad.hs15
1 files changed, 10 insertions, 5 deletions
diff --git a/XMonad.hs b/XMonad.hs
index 0de51ed..9053e69 100644
--- a/XMonad.hs
+++ b/XMonad.hs
@@ -15,12 +15,11 @@
--
module XMonad (
- X, WorkSpace, XState(..), Layout(..), LayoutDesc(..),
- runX, io, withDisplay, isRoot,
- spawn, trace, whenJust, rotateLayout
+ X, WorkSpace, WorkspaceId(..), ScreenId(..), XState(..), Layout(..), LayoutDesc(..),
+ runX, io, withDisplay, isRoot, spawn, trace, whenJust, rotateLayout
) where
-import StackSet (StackSet,WorkspaceId)
+import StackSet (StackSet)
import Control.Monad.State
import System.IO
@@ -48,7 +47,13 @@ data XState = XState
-- to descriptions of their layouts
}
-type WorkSpace = StackSet Window
+type WorkSpace = StackSet WorkspaceId ScreenId Window
+
+-- | Virtual workspace indicies
+newtype WorkspaceId = W Int deriving (Eq,Ord,Show,Enum,Num,Integral,Real)
+
+-- | Physical screen indicies
+newtype ScreenId = S Int deriving (Eq,Ord,Show,Enum,Num,Integral,Real)
------------------------------------------------------------------------