mirror of
https://github.com/xmonad/xmonad.git
synced 2025-08-01 12:41:53 -07:00
be sure to reset the gap list on rescreen
This commit is contained in:
2
Main.hs
2
Main.hs
@@ -63,7 +63,7 @@ main = do
|
|||||||
, layouts = M.fromList [(w, safeLayouts) | w <- [0 .. W workspaces - 1]]
|
, layouts = M.fromList [(w, safeLayouts) | w <- [0 .. W workspaces - 1]]
|
||||||
, statusGaps = take (length xinesc) $ defaultGaps ++ repeat (0,0,0,0)
|
, statusGaps = take (length xinesc) $ defaultGaps ++ repeat (0,0,0,0)
|
||||||
, xineScreens = xinesc
|
, xineScreens = xinesc
|
||||||
, dimensions = (fromIntegral (displayWidth dpy dflt),
|
, dimensions = (fromIntegral (displayWidth dpy dflt),
|
||||||
fromIntegral (displayHeight dpy dflt)) }
|
fromIntegral (displayHeight dpy dflt)) }
|
||||||
|
|
||||||
xSetErrorHandler -- in C, I'm too lazy to write the binding: dons
|
xSetErrorHandler -- in C, I'm too lazy to write the binding: dons
|
||||||
|
@@ -179,7 +179,7 @@ tileWindow d w r = do
|
|||||||
-- ---------------------------------------------------------------------
|
-- ---------------------------------------------------------------------
|
||||||
|
|
||||||
-- | rescreen. The screen configuration may have changed (due to
|
-- | rescreen. The screen configuration may have changed (due to
|
||||||
-- xrandr), update the state and refresh the screen.
|
-- xrandr), update the state and refresh the screen, and reset the gap.
|
||||||
rescreen :: X ()
|
rescreen :: X ()
|
||||||
rescreen = do
|
rescreen = do
|
||||||
xinesc <- withDisplay (io . getScreenInfo)
|
xinesc <- withDisplay (io . getScreenInfo)
|
||||||
@@ -189,7 +189,8 @@ rescreen = do
|
|||||||
let sx = maximum $ map (\r -> rect_x r + fromIntegral (rect_width r)) xinesc
|
let sx = maximum $ map (\r -> rect_x r + fromIntegral (rect_width r)) xinesc
|
||||||
sy = maximum $ map (\r -> rect_y r + fromIntegral (rect_height r)) xinesc
|
sy = maximum $ map (\r -> rect_y r + fromIntegral (rect_height r)) xinesc
|
||||||
|
|
||||||
modify (\s -> s { xineScreens = xinesc, dimensions = (sx, sy) })
|
modify (\s -> s { xineScreens = xinesc , dimensions = (sx, sy)
|
||||||
|
, statusGaps = take (length xinesc) $ (statusGaps s) ++ repeat (0,0,0,0) })
|
||||||
|
|
||||||
windows $ \ws@(W.StackSet { W.current = v, W.visible = vs, W.hidden = hs }) ->
|
windows $ \ws@(W.StackSet { W.current = v, W.visible = vs, W.hidden = hs }) ->
|
||||||
let (x:xs, ys) = splitAt (length xinesc) $ map W.workspace (v:vs) ++ hs
|
let (x:xs, ys) = splitAt (length xinesc) $ map W.workspace (v:vs) ++ hs
|
||||||
|
Reference in New Issue
Block a user