我想知道是否可以将客户端放入小部件层次结构。 基本上有一种方法可以做到:
local cool_background_widget = wibox.widget({
widget = wibox.container.background,
{
client, --??????
}
})
我期望没有,但是如果没有,是否有一些骇人听闻的方法来实现?
答案 0 :(得分:1)
简短的回答:不。但是有一些解决方法。
如果在wibar / wibox中仅需要一个客户端,则可以在该客户端周围放置一个不同的标题栏,并将其用作顶部(或其他)栏。要像普通酒吧一样增加空间,请使用客户端的:struts()
属性或使用screen.padding
。
第二个选项是创建一个新的小部件,然后使用其自己的:draw()
函数作为挂钩来了解何时移动客户端(使用c:geometry()
)。这主要是the dynamic client layout branch does。这有一些问题,例如必须继续提高客户。您还必须断开许多连接,以防止现有的代码路径影响客户端(例如request::geometry
处理程序,例如使用mod4+mouse
移动/调整客户端大小的处理程序)。您还需要使客户端floating
和sticky
才能获得正确的结果。
请务必牢记,没有任何技术限制会阻止此功能的实现。现有关于添加此内容的issue。在某些替代性环境中,两个核心AwesomeWM开发人员都将拥有无限的时间,这将是一项功能。我们正在讨论首先针对单个系统托盘“图标”执行此操作。这个issue也是很好的参考,但是在这种情况下,不足以实现您的要求。