是否可以在AwesomeWM窗口管理器中将系统托盘形状更改为圆角矩形? 我已经在文档中搜索了“ wibox.widget.systray”类,但没有选择更改其形状的选项。 我试图将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
答案 0 :(得分:2)
可以!为此,必须使用Awesome的“容器”模式并将其包装到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的限制。 Awesome没有内部合成管理器,而是依赖于诸如Compton之类的外部合成器。这样做的缺点之一是系统托盘。好的方面是,其他所有方面。同样,Qt和GTK应用程序都在不断降低对系统托盘后台的支持。该错误就在他们身边,如果不实施非标准的hacks,AwesomeWM不会 做到这一点。因此,您最终得到: