auto focus on new clients unless it has "no_autofocus" property
This commit is contained in:
parent
83a69e0b19
commit
c3f96594fd
11
init.lua
11
init.lua
|
@ -113,7 +113,9 @@ local function match_client(c, startup)
|
||||||
local rules = class_client[low]
|
local rules = class_client[low]
|
||||||
if c.transient_for and settings.group_children == true then
|
if c.transient_for and settings.group_children == true then
|
||||||
c.sticky = c.transient_for.sticky or false
|
c.sticky = c.transient_for.sticky or false
|
||||||
return c:tags(c.transient_for:tags())
|
c:tags(c.transient_for:tags())
|
||||||
|
capi.client.focus = c
|
||||||
|
return
|
||||||
elseif rules then
|
elseif rules then
|
||||||
local ret = apply_properties(c,{},rules.properties)
|
local ret = apply_properties(c,{},rules.properties)
|
||||||
if ret then return ret end
|
if ret then return ret end
|
||||||
|
@ -141,13 +143,18 @@ local function match_client(c, startup)
|
||||||
elseif awful.tag.getproperty(tags[1],"no_focus_stealing") then
|
elseif awful.tag.getproperty(tags[1],"no_focus_stealing") then
|
||||||
c.urgent = true
|
c.urgent = true
|
||||||
end
|
end
|
||||||
|
if not rules.properties.no_autofocus then
|
||||||
|
capi.client.focus = c
|
||||||
|
end
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
--Add to the current tag if not exclusive
|
--Add to the current tag if not exclusive
|
||||||
local cur_tag = awful.tag.selected(c.screen)
|
local cur_tag = awful.tag.selected(c.screen)
|
||||||
if awful.tag.getproperty(cur_tag,"exclusive") ~= true then
|
if awful.tag.getproperty(cur_tag,"exclusive") ~= true then
|
||||||
return c:tags({cur_tag})
|
c:tags({cur_tag})
|
||||||
|
capi.client.focus = c
|
||||||
|
return true
|
||||||
end
|
end
|
||||||
--Last resort, create a new tag
|
--Last resort, create a new tag
|
||||||
class_client[low] = class_client[low] or {tags={},properties={}}
|
class_client[low] = class_client[low] or {tags={},properties={}}
|
||||||
|
|
Loading…
Reference in New Issue