X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/25e897c6c9a9248014afad69b68e0d17f14a5a66..refs/heads/lazyvim:/awesome/signals.lua diff --git a/awesome/signals.lua b/awesome/signals.lua index 748b09e..62a56a6 100644 --- a/awesome/signals.lua +++ b/awesome/signals.lua @@ -1,13 +1,5 @@ -- Signal function to execute when a new client appears. client.connect_signal("manage", function (c, startup) - -- Enable sloppy focus - c:connect_signal("mouse::enter", function(c) - if awful.layout.get(c.screen) ~= awful.layout.suit.magnifier - and awful.client.focus.filter(c) then - client.focus = c - end - end) - if not startup then -- Set the windows at the slave, -- i.e. put it at the end of others instead of setting it master. @@ -18,6 +10,34 @@ client.connect_signal("manage", function (c, startup) awful.placement.no_overlap(c) awful.placement.no_offscreen(c) end + elseif not c.size_hints.user_position and not c.size_hints.program_position then + -- Prevent clients from being unreachable after screen count change + awful.placement.no_offscreen(c) + end +end) + +-- open steam games on tag 9 and switch to it +awesome.register_xproperty("STEAM_GAME", "number") +client.connect_signal("manage", function (c) + local steam_game = c:get_xproperty("STEAM_GAME") + if steam_game then + local tag = tags[1][9] + c:move_to_screen(1) + c:move_to_tag(tag) + if steam_game ~= 769 then + -- 769 seems to be the value for the steam client itself + tag:view_only() + c.fullscreen = true + awful.placement.centered(mouse, {parent = c}) + end + end +end) + +-- Enable sloppy focus +client.connect_signal("mouse::enter", function(c) + if awful.layout.get(c.screen) ~= awful.layout.suit.magnifier + and awful.client.focus.filter(c) then + client.focus = c end end)