aboutsummaryrefslogtreecommitdiffstats
path: root/Main.hs
diff options
context:
space:
mode:
authorJason Creighton <jcreigh@gmail.com>2007-04-30 06:38:59 +0200
committerJason Creighton <jcreigh@gmail.com>2007-04-30 06:38:59 +0200
commit286234b538ae83e33b37fa8f344cccf1d4e94756 (patch)
tree500f4beeb8fc6d2420a9e4c5ab2d1cc99595fed3 /Main.hs
parent131cbfc449e954252fc8cc93ea1e4b43881f76a0 (diff)
downloadxmonad-286234b538ae83e33b37fa8f344cccf1d4e94756.tar.gz
xmonad-286234b538ae83e33b37fa8f344cccf1d4e94756.tar.xz
xmonad-286234b538ae83e33b37fa8f344cccf1d4e94756.zip
configurable border colors
This also fixes a bug where xmonad was assuming a 24-bit display, and just using, eg, 0xff0000 as an index into a colormap without querying the X server to determine the proper pixel value for "red". darcs-hash:20070430043859-b9aa7-9467ff583ec95144e5baa088e4b1536a725e7bc6.gz
Diffstat (limited to 'Main.hs')
-rw-r--r--Main.hs6
1 files changed, 6 insertions, 0 deletions
diff --git a/Main.hs b/Main.hs
index 11d839d..e1d5c90 100644
--- a/Main.hs
+++ b/Main.hs
@@ -35,10 +35,14 @@ main :: IO ()
main = do
dpy <- openDisplay ""
let dflt = defaultScreen dpy
+ initcolor c = fst `liftM` allocNamedColor dpy (defaultColormap dpy dflt) c
+
rootw <- rootWindow dpy dflt
wmdelt <- internAtom dpy "WM_DELETE_WINDOW" False
wmprot <- internAtom dpy "WM_PROTOCOLS" False
xinesc <- getScreenInfo dpy
+ nbc <- initcolor normalBorderColor
+ fbc <- initcolor focusedBorderColor
let st = XState
{ display = dpy
@@ -52,6 +56,8 @@ main = do
, workspace = W.empty workspaces (length xinesc)
, defaultLayoutDesc = startingLayoutDesc
, layoutDescs = M.empty
+ , normalBorder = nbc
+ , focusedBorder = fbc
}
xSetErrorHandler -- in C, I'm too lazy to write the binding