我想要
>从覆盖全屏的浮动窗口(如mplayer)中删除边框(仅)
>在工作区中只有一个窗口时,使用不同的边框颜色(normalBorderColor).
目前,我正在使用XMonad.Layout.NoBorders中的smartBorders从mplayer中删除边框,并在该窗口是工作区中唯一的窗口时删除窗口的边框.然而,当我在两个工作空间之间切换时,它们都有一个非浮动窗口(不管模式(高/镜像/满)),然后我看到窗口(在工作区我正在改变)“跳”一点,因为它的边框被绘制,然后在此之后删除一个短暂的时刻(如果将borderWidth设置为大数字,效果将更加明显).
我的〜/ .xmonad / xmonad.hs的相关部分如下.
import XMonad.Hooks.ManageDocks import XMonad.Layout.NoBorders myLayout = tiled ||| Mirror tiled ||| Full where tiled = Tall 1 (3/100) (3/5) main = xmonad $defaultConfig { layoutHook = avoidStruts $smartBorders $myLayout,borderWidth = 4,normalBorderColor = "#000000" -- black,focusedBorderColor = "#ff3f3f" -- reddish }
我解决了pt. 1使用来自XMonad.Layout.NoBorders的名为OnlyFloat的Ambiguity构造函数.
原文链接:https://www.f2er.com/windows/369556.htmlimport XMonad.Hooks.ManageDocks import XMonad.Layout.NoBorders myLayout = tiled ||| Mirror tiled ||| Full where tiled = Tall 1 (3/100) (3/5) main = xmonad $defaultConfig { layoutHook = lessBorders OnlyFloat $avoidStruts $myLayout,focusedBorderColor = "#ff3f3f" -- reddish }
我没有处理此外,当我切换到工作空间时,聚焦窗口的边框颜色“闪烁”,因为最初窗口没有被聚焦(因此它的边框根据normalBorderColor被着色),之后窗口被聚焦(因此它的边框得到颜色focusBorderColor).