From bb448cc293033df5b54ce961716bcd07f0e14e98 Mon Sep 17 00:00:00 2001 From: Thiago Mota Date: Wed, 17 Nov 2021 20:59:06 -0300 Subject: [PATCH] X.Operations: Make window borders opaque --- src/XMonad/Operations.hs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/XMonad/Operations.hs b/src/XMonad/Operations.hs index 0de274a..bfa661c 100644 --- a/src/XMonad/Operations.hs +++ b/src/XMonad/Operations.hs @@ -250,7 +250,7 @@ setWindowBorderWithFallback :: Display -> Window -> String -> Pixel -> X () setWindowBorderWithFallback dpy w color basic = io $ C.handle fallback $ do 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 where fallback :: C.SomeException -> IO () @@ -504,10 +504,14 @@ cleanMask km = do nlm <- gets numberlockMask 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. initColor :: Display -> String -> IO (Maybe Pixel) 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) ------------------------------------------------------------------------