changed type of getScreenInfo in Graphics.X11.Xinerama

This commit is contained in:
Jason Creighton
2007-03-20 04:42:53 +00:00
parent f1a0796da3
commit 437167d34c
2 changed files with 6 additions and 8 deletions

10
Main.hs
View File

@@ -77,7 +77,7 @@ main = do
{ display = dpy
, screen = dflt
, xineScreens = xinesc
, wsOnScreen = M.fromList $ map ((\n -> (n,n)) . fromIntegral . xsi_screen_number) xinesc
, wsOnScreen = M.fromList $ map (\n -> (n,n)) [0..((length xinesc)-1)]
, theRoot = rootw
, wmdelete = wmdelt
, wmprotocols = wmprot
@@ -227,10 +227,10 @@ refresh = do
forM_ (M.assocs ws2sc) $ \(n, scn) ->
whenJust (W.peekStack n ws) $ \w -> withDisplay $ \d -> do
let sc = xinesc !! scn
io $ do moveResizeWindow d w (fromIntegral $ xsi_x_org sc)
(fromIntegral $ xsi_y_org sc)
(fromIntegral $ xsi_width sc)
(fromIntegral $ xsi_height sc) -- fullscreen
io $ do moveResizeWindow d w (rect_x sc)
(rect_y sc)
(rect_width sc)
(rect_height sc)
raiseWindow d w
whenJust (W.peek ws) setFocus

View File

@@ -28,8 +28,6 @@ import System.Posix.Process (executeFile, forkProcess, getProcessStatus)
import System.Exit
import Graphics.X11.Xlib
import Graphics.X11.Xinerama
import qualified Data.Map as M
-- | XState, the window manager state.
@@ -37,7 +35,7 @@ import qualified Data.Map as M
data XState = XState
{ display :: Display
, screen :: {-# UNPACK #-} !ScreenNumber
, xineScreens :: {-# UNPACK #-} ![XineramaScreenInfo]
, xineScreens :: {-# UNPACK #-} ![Rectangle]
-- a mapping of workspaces to xinerama screen numbers
, wsOnScreen :: {-# UNPACK #-} !(M.Map Int Int)
, theRoot :: {-# UNPACK #-} !Window