真棒-WM:如何更改系统托盘形状

问题描述 投票:1回答:1

有什么办法来改变AwesomeWM窗口管理器的系统托盘形状圆角矩形?我搜索“wibox.widget.systray”类文档,但它并没有选项来改变它的形状。我试图把系统托盘集装箱和设置形状有,但它没有工作:

s.mysystray = wibox.widget.systray()
local systray_container = wibox.container.background(s.mysystray, beautiful.bg_systray, gears.shape.rounded_rect)
local systray_margin = wibox.container.margin(systray_container, 0, 0, 5, 5)
local systray = wibox.container.place(systray_margin, {
    halign = "center",
    fill_vertical = true,
})

我想用统一选择任务列表系统托盘就像在下面的图片:https://imgur.com/a/5m8RZNh

lua awesome-wm
1个回答
2
投票

您可以!要做到这一点,你必须使用真棒“容器”模式,它包装成一个wibox.container.background

-- the systray has its own internal background because of X11 limitations
beautiful.bg_systray = "#ff0000"
beautiful.systray_icon_spacing = 10

local my_round_systray = wibox.widget {
    {
        wibox.widget.systray(),
        left   = 10,
        top    = 2,
        bottom = 2,
        right  = 10,
        widget = wibox.container.margin,
    },
    bg         = "#ff0000",
    shape      = gears.shape.rounded_rect,
    shape_clip = true,
    widget     = wibox.container.background,
}

请注意,后台系统托盘小部件中的处理是有限的。它不能是一个梯度或透明的颜色。这是因为X11的限制。真棒不具有内部合成器使用,而是依赖于外部的如康普顿。一个这样做的缺点是系统托盘。有利的一面是,好了,一切。此外,Qt和GTK程序保持其回归系统托盘的背景支持。该缺陷是站在他们一边,并不能缓解非合成窗口管理器没有实现非符合标准的黑客,这AwesomeWM不会做。所以,你最终用:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.