Привет!
Не нашел как сделать автоскрытие «родными» средствами, набросал вот такие строчки в функции awful.screen.connect_for_each_screen
файла rc.lua:
-- autohide panel
s.wibox_plug = awful.wibar({ position = "top",
height = 1,
opacity = 0,
visible = false,
screen = s })
local function make_panel_visible()
s.mywibox.visible = true
s.wibox_plug.visible = false
end
local function make_panel_hidden()
s.mywibox.visible = false
s.wibox_plug.visible = true
end
local function panel_autohide(focused_client)
if focused_client.class == 'firefox' then
make_panel_hidden()
s.mywibox:connect_signal("mouse::leave", make_panel_hidden)
s.wibox_plug:connect_signal("mouse::enter", make_panel_visible)
else
make_panel_visible()
s.mywibox:disconnect_signal("mouse::leave", make_panel_hidden)
s.wibox_plug:disconnect_signal("mouse::enter", make_panel_visible)
end
end
client.connect_signal("focus", panel_autohide)
Не могу найти сигнал, посылаемый во время активации тега. Вообще, такой существует? Есть какой-то недокументированный request::select
, но я не понял как им пользоваться.
Вопрос в том, что панель нормально восстанавливается, только если на следующем теге есть какой-нибудь клиент (окно). А мне нужно обработать исключение, когда на теге никаких окон нет.
Спасибо.