Я не проверял следующее, но это может сработать. Идея правила заключается в том, что оно используется для определения того, какие окна не должны быть полноэкранными. Это обычное awful.rules
-правило. Все клиенты, которые не соответствуют правилу, обычно обрабатываются awful.ewmh.geometry
.
local rule = { class = "Firefox" }
client.disconnect_signal("request::geometry", awful.ewmh.geometry)
client.connect_signal("request::geometry", function(c, context, ...)
if context ~= "fullscreen" or not awful.rules.match(c, rule) then
awful.ewmh.geometry(c, context, ...)
end
end)
Изменить: чтобы переключить это поведение, я предлагаю следующее:
local no_fullscreen = true
local rule = { class = "Firefox" }
client.disconnect_signal("request::geometry", awful.ewmh.geometry)
client.connect_signal("request::geometry", function(c, context, ...)
if not no_fullscreen or context ~= "fullscreen" or not awful.rules.match(c, rule) then
awful.ewmh.geometry(c, context, ...)
end
end)
Затем добавьте привязку клавиш с функцией обратного вызова function() no_fullscreen = not no_fullscreen end
.
person
Uli Schlachter
schedule
16.06.2017