我正在运行一个创建和关闭几个窗口的脚本,因此,我在rc.lua中添加了一种方法来保持窗口始终位于顶部:
awful.key({ modkey, "Control" }, "space",
function(c)
awful.client.floating.toggle()
c.ontop = not c.ontop
end),
Run Code Online (Sandbox Code Playgroud)
问题是:当创建新窗口时,我将失去焦点,该焦点将传递到新窗口.
有没有办法让前一个切换不仅让窗口保持在顶部,而且还有焦点,直到我再次切换它?
假设这个 awesomerc.lua 文件的awful.rules.rules第 357-375 行的分配在您的用户文件中,并且该分配中使用的是这个文件中的那个,那么您应该能够做这样的事情。awesomerc.luaawful.client.focus.filter
在 rc 文件中的某处定义自定义焦点过滤器函数。
function custom_focus_filter(c)
if global_focus_disable then
return nil
end
return awful.client.focus.filter(c)
end
Run Code Online (Sandbox Code Playgroud)
然后在规则分配中使用该自定义过滤器函数代替原始过滤器函数。
awful.rules.rules = {
-- All clients will match this rule.
{ rule = { },
properties = { ....
focus = custom_focus_filter,
.... } },
Run Code Online (Sandbox Code Playgroud)
然后您的切换功能只需要根据需要设置和取消设置全局。
awful.key({ modkey, "Shift" }, "f", function ()
global_focus_disable = not global_focus_disable
end)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1770 次 |
| 最近记录: |