mirror of
https://github.com/xmonad/xmonad.git
synced 2025-08-01 04:31:53 -07:00
Merge pull request #350 from Thiago4532/opaque-window-border
X.Operations: Make window borders opaque
This commit is contained in:
@@ -250,7 +250,7 @@ setWindowBorderWithFallback :: Display -> Window -> String -> Pixel -> X ()
|
|||||||
setWindowBorderWithFallback dpy w color basic = io $
|
setWindowBorderWithFallback dpy w color basic = io $
|
||||||
C.handle fallback $ do
|
C.handle fallback $ do
|
||||||
wa <- getWindowAttributes dpy w
|
wa <- getWindowAttributes dpy w
|
||||||
pixel <- color_pixel . fst <$> allocNamedColor dpy (wa_colormap wa) color
|
pixel <- setPixelSolid . color_pixel . fst <$> allocNamedColor dpy (wa_colormap wa) color
|
||||||
setWindowBorder dpy w pixel
|
setWindowBorder dpy w pixel
|
||||||
where
|
where
|
||||||
fallback :: C.SomeException -> IO ()
|
fallback :: C.SomeException -> IO ()
|
||||||
@@ -504,10 +504,14 @@ cleanMask km = do
|
|||||||
nlm <- gets numberlockMask
|
nlm <- gets numberlockMask
|
||||||
return (complement (nlm .|. lockMask) .&. km)
|
return (complement (nlm .|. lockMask) .&. km)
|
||||||
|
|
||||||
|
-- | Set the 'Pixel' alpha value to 255.
|
||||||
|
setPixelSolid :: Pixel -> Pixel
|
||||||
|
setPixelSolid p = (p .|. 0xff000000)
|
||||||
|
|
||||||
-- | Get the 'Pixel' value for a named color.
|
-- | Get the 'Pixel' value for a named color.
|
||||||
initColor :: Display -> String -> IO (Maybe Pixel)
|
initColor :: Display -> String -> IO (Maybe Pixel)
|
||||||
initColor dpy c = C.handle (\(C.SomeException _) -> return Nothing) $
|
initColor dpy c = C.handle (\(C.SomeException _) -> return Nothing) $
|
||||||
(Just . color_pixel . fst) <$> allocNamedColor dpy colormap c
|
(Just . setPixelSolid . color_pixel . fst) <$> allocNamedColor dpy colormap c
|
||||||
where colormap = defaultColormap dpy (defaultScreen dpy)
|
where colormap = defaultColormap dpy (defaultScreen dpy)
|
||||||
|
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
|
Reference in New Issue
Block a user