From ff9449a55e44962320aed5462b8d3a7a5e84c564 Mon Sep 17 00:00:00 2001 From: daniel Date: Sat, 21 Feb 2009 23:52:29 +0100 Subject: IndependentScreens, v0.0 darcs-hash:20090221225229-c98ca-e70f998908ef8106af4c6abf62761750f0118eaa.gz --- XMonad/Layout/IndependentScreens.hs | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 XMonad/Layout/IndependentScreens.hs (limited to 'XMonad/Layout/IndependentScreens.hs') diff --git a/XMonad/Layout/IndependentScreens.hs b/XMonad/Layout/IndependentScreens.hs new file mode 100644 index 0000000..fe86a40 --- /dev/null +++ b/XMonad/Layout/IndependentScreens.hs @@ -0,0 +1,8 @@ +module IndependentScreens where + +marshall (S sc) ws = show sc ++ '_':ws +unmarshall = ((S . read) *** drop 1) . break (=='_') +workspaces' = nub . map (snd . unmarshall) . workspaces +withScreens n workspaces = [marshall sc ws | ws <- workspaces, sc <- [0..n-1]] +onScreen f workspace = screen . current >>= f . flip marshall workspace +countScreens = fmap genericLength $ openDisplay "" >>= getScreenInfo -- cgit v1.2.3