-- Signal function to execute when a new client appears. client.connect_signal("manage", function (c, startup) if not startup then -- Set the windows at the slave, -- i.e. put it at the end of others instead of setting it master. awful.client.setslave(c) -- Put windows in a smart way, only if they does not set an initial position. if not c.size_hints.user_position and not c.size_hints.program_position then 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) client.connect_signal("focus", function(c) c.border_color = beautiful.border_focus end) client.connect_signal("unfocus", function(c) c.border_color = beautiful.border_normal end)