【发布时间】:2021-03-03 03:21:57
【问题描述】:
我的目标是让拥有父级的客户端与其父级在同一个标签上生成。没有父母的客户应该在活动标签上产生(像往常一样)。
我的第一种方法是使用client.connect_signal("manage", ...) 连接信号。但是,我找不到获取客户父母或检查其是否有父母的方法。
感谢您查看我的问题!
更新1:我找到了client:get_transient_for_matching (matcher),但文档帮助不大。
更新 2:感谢 Uli 提示使用 client::transient_for 作为获取瞬态的更简单方法。使用
client.connect_signal("manage", function (c)
parent = c.transient_for
naughty.notify({ preset = naughty.config.presets.critical,
title = "Debug",
text = tostring(c.window) .. " " .. (parent and tostring(parent.window) or "") })
if parent then
-- move new client to same tag and screen as parent
tag = parent.first_tag
screen = parent.screen
c:move_to_tag(tag)
c:move_to_screen(screen)
end
end)
我尝试实现我的目标并使用通知添加了一个简单的调试输出。现在,只有极少数新客户端实际上具有不是nil 的瞬态。例如,从终端生成 git gui 没有瞬态。但是,我坚信它应该(或者我误解了瞬态是什么)。
Ubuntu 20LTS,Awesome WM 版本 4.3-4,awesome-extra 2019021001
【问题讨论】:
标签: awesome-wm