-- {{{ Rules
-- Rules to apply to new clients (through the "manage" signal).
+
+local function move_to_tag(s, t)
+ return function(c)
+ c:move_to_tag(tags[s][t])
+ end
+end
+
awful.rules.rules = {
-- All clients will match this rule.
{ rule = { },
raise = true,
keys = clientkeys,
buttons = clientbuttons,
+ screen = awful.screen.preferred,
placement = awful.placement.no_overlap+awful.placement.no_offscreen,
- -- https://github.com/awesomeWM/awesome/issues/1091#issuecomment-246933520
- screen = function (c) return awesome.startup and c.screen or awful.screen.focused() end,
- }
+ floating = true
+ },
},
-- Add titlebars to normal clients and dialogs
} },
{ rule = { class = "URxvt", instance = "irc" },
properties = {
--- screen = screen.count(),
--- tag = screen.count() == 1 and "2" or "1"
+ switchtotag = true
},
- callback = function(c) c:move_to_tag(tags[1][2]) end
+ callback = move_to_tag(screen.count(), screen.count() == 1 and 2 or 1)
},
- { rule = { class = "Firefox" },
+ { rule = { class = "Firefox", instance = "Navigator" },
properties = {
floating = false,
--- screen = screen.count(),
--- tag = screen.count() == 1 and "2" or "1"
},
- callback = function(c) c:move_to_tag(tags[1][9]) end
+ callback = move_to_tag(screen.count() == 1 and 1 or 2, 9)
},
- { rule = { class = "Icedove" },
+ { rule = { class = "Icedove", instance = "Mail" },
properties = {
floating = false,
--- screen = screen.count(),
--- tag = screen.count() == 1 and "2" or "1"
},
- callback = function(c) c:move_to_tag(tags[1][8]) end
+ callback = move_to_tag(screen.count() == 1 and 1 or 2, 8)
},
- { rule = { class = "chromium" },
+ { rule = { class = "chromium", instance = "chromium" },
properties = {
floating = false,
--- screen = screen.count(),
--- tag = screen.count() == 1 and "2" or "1"
},
- callback = function(c) c:move_to_tag(tags[1][9]) end
+ callback = move_to_tag(screen.count() == 1 and 1 or 2, 9)
},
{ rule = { class = "Gscan2pdf" },
properties = {
screen = 1,
tag = "5"
},
--- callback = function(c) c:move_to_tag(tags[1][9]) end
+ callback = move_to_tag(1, 5)
},
{ rule = { name = "gscan2pdf .*" },
properties = {
floating = false,
},
--- callback = function(c) c:move_to_tag(tags[1][9]) end
+ callback = move_to_tag(1, 5)
},
}
-- }}}
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)
--- https://www.mail-archive.com/awesome@naquadah.org/msg08285.html
-client.disconnect_signal("request::activate", awful.ewmh.activate)
-client.connect_signal("request::activate", function(c, context, hints)
- if c.class == "Firefox" and context == "ewmh" then
- return
- end
- return awful.ewmh.activate(c, context, hints)
-end)
--- }}}
+awful.ewmh.add_activate_filter(function(c) if c.class == "Firefox" then return false end end)
-- vim:ft=lua:sw=4:sts=4:ts=4:et