【发布时间】:2018-10-26 15:11:45
【问题描述】:
我有以下想法:
我有 2 个版本的壁纸。一个是原始的,第二个有点模糊。我想在屏幕上打开第一个窗口/程序时更改原始壁纸。关闭最后一个窗口/程序后,将墙纸改回。 另外,当我在标签之间切换时,我想检查是否有任何窗口/程序打开,然后调整壁纸。
我该怎么做?
附: 我用氮气来设置壁纸
【问题讨论】:
标签: awesome-wm
我有以下想法:
我有 2 个版本的壁纸。一个是原始的,第二个有点模糊。我想在屏幕上打开第一个窗口/程序时更改原始壁纸。关闭最后一个窗口/程序后,将墙纸改回。 另外,当我在标签之间切换时,我想检查是否有任何窗口/程序打开,然后调整壁纸。
我该怎么做?
附: 我用氮气来设置壁纸
【问题讨论】:
标签: awesome-wm
我找到了一种根据可见客户端设置壁纸的方法,但我不知道你的 Nitrogen 调用是什么样的。只需将 naughty.notify 行替换为您的 Nitrogen 调用即可。
在您的rc.lua 中的某处,您应该可以找到类似这样的内容:
awful.screen.connect_for_each_screen(function(s)
将以下内容添加到该函数中
tag.connect_signal("property::selected", function(t)
if #s.clients > 0 then
naughty.notify({text = "set blurry wallpaper", timeout = 1})
else
naughty.notify({text = "set original wallpaper", timeout = 1})
end
end
)
table.getn 已弃用,但这是旧 lua 版本的解决方案:
tag.connect_signal("property::selected", function(t)
if table.getn(s.clients) > 0 then
naughty.notify({text = "set blurry wallpaper", timeout = 1})
else
naughty.notify({text = "set original wallpaper", timeout = 1})
end
end
)
【讨论】:
table.getn 已弃用。我已经更新了我的答案。
s 是循环遍历所有屏幕时的当前屏幕(here 是文档)。 #是lua代码,返回数组元素个数。