aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDon Stewart <dons@cse.unsw.edu.au>2007-04-09 09:23:02 +0200
committerDon Stewart <dons@cse.unsw.edu.au>2007-04-09 09:23:02 +0200
commit7c607c0602b75ca6342cf6671ef01b794d3d37f7 (patch)
tree3e8c3c2ab76b18a0c2979df1326b36e6577e20a6
parenta3bb7a2bb0998516c7056eed8c1bd15e4d6af1bb (diff)
downloadxmonad-7c607c0602b75ca6342cf6671ef01b794d3d37f7.tar.gz
xmonad-7c607c0602b75ca6342cf6671ef01b794d3d37f7.tar.xz
xmonad-7c607c0602b75ca6342cf6671ef01b794d3d37f7.zip
Use -funbox-strict-fields, rather than UNPACK pragmas. cleaner code.
darcs-hash:20070409072302-9c5c1-f55281c59754fa1fe17dbfe406f2fe2c71f7061d.gz
-rw-r--r--XMonad.hs24
-rw-r--r--xmonad.cabal2
2 files changed, 14 insertions, 12 deletions
diff --git a/XMonad.hs b/XMonad.hs
index afe2512..9c983e6 100644
--- a/XMonad.hs
+++ b/XMonad.hs
@@ -33,18 +33,20 @@ import qualified Data.Map as M
-- | XState, the window manager state.
-- Just the display, width, height and a window list
data XState = XState
- { display :: Display
- , screen :: {-# UNPACK #-} !ScreenNumber
- , xineScreens :: {-# UNPACK #-} ![Rectangle]
+ { display :: Display
+ , screen :: !ScreenNumber
+
+ , xineScreens :: ![Rectangle]
-- a mapping of workspaces to xinerama screen numbers
- , wsOnScreen :: {-# UNPACK #-} !(M.Map Int Int)
- , theRoot :: {-# UNPACK #-} !Window
- , wmdelete :: {-# UNPACK #-} !Atom
- , wmprotocols :: {-# UNPACK #-} !Atom
- , dimensions :: {-# UNPACK #-} !(Int,Int)
- , workspace :: {-# UNPACK #-} !WorkSpace -- ^ workspace list
- , defaultLayoutDesc :: {-# UNPACK #-} !LayoutDesc
- , layoutDescs :: {-# UNPACK #-} !(M.Map Int LayoutDesc)
+
+ , wsOnScreen :: !(M.Map Int Int)
+ , theRoot :: !Window
+ , wmdelete :: !Atom
+ , wmprotocols :: !Atom
+ , dimensions :: !(Int,Int)
+ , workspace :: !WorkSpace -- ^ workspace list
+ , defaultLayoutDesc :: !LayoutDesc
+ , layoutDescs :: !(M.Map Int LayoutDesc)
-- ^ mapping of workspaces to descriptions of their layouts
}
diff --git a/xmonad.cabal b/xmonad.cabal
index 7b81a16..60af254 100644
--- a/xmonad.cabal
+++ b/xmonad.cabal
@@ -11,6 +11,6 @@ build-depends: base>=1.0, X11>=1.1, X11-extras==0.0, mtl==1.0, unix>=1.0
executable: xmonad
main-is: Main.hs
-ghc-options: -O2 -Wall -optl-Wl,-s
+ghc-options: -funbox-strict-fields -O2 -Wall -optl-Wl,-s
-- ghc-options: -O2 -Wall -optl-Wl,-s -prof -auto-all
extensions: GeneralizedNewtypeDeriving