我正在运行一个创建和关闭多个窗口的脚本,因此,我在 rc.lua 中添加了一种方法,使我正在工作的窗口始终位于顶部:
awful.key({ modkey, "Control" }, "space",
function(c)
awful.client.floating.toggle()
c.ontop = not c.ontop
end),
问题是:创建新窗口时,我失去了焦点,焦点传递到了新窗口。
有没有办法使之前的切换不仅使窗口保持在顶部,而且还保持焦点,直到我再次切换它?
假设awful.rules.rules
来自第 357-375 行的分配这个awesomerc.lua文件 https://github.com/awesomeWM/awesome/blob/master/awesomerc.lua.in#L357在您的用户中awesomerc.lua
文件和awful.client.focus.filter
该作业中使用的是来自这个文件 https://github.com/awesomeWM/awesome/blob/master/lib/awful/client.lua.in#L145那么你应该能够做这样的事情。
在 rc 文件中的某处定义自定义焦点过滤器函数。
function custom_focus_filter(c)
if global_focus_disable then
return nil
end
return awful.client.focus.filter(c)
end
然后在规则分配中使用该自定义过滤器函数来代替原始过滤器函数。
awful.rules.rules = {
-- All clients will match this rule.
{ rule = { },
properties = { ....
focus = custom_focus_filter,
.... } },
然后你的切换函数只需要根据需要设置和取消设置全局即可。
awful.key({ modkey, "Shift" }, "f", function ()
global_focus_disable = not global_focus_disable
end)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)