X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/56ebe9158e0de45c56e789d626fad927cc5e75a5..1b12fd2319e1cd02706fd3a7ec0f0203ca2782d2:/util/quake.lua diff --git a/util/quake.lua b/util/quake.lua index 4c42803..c98f28d 100644 --- a/util/quake.lua +++ b/util/quake.lua @@ -1,10 +1,9 @@ - --[[ - - Licensed under GNU General Public License v2 - * (c) 2016, Luke Bonham - * (c) 2015, unknown - + + Licensed under GNU General Public License v2 + * (c) 2016, Luke Bonham + * (c) 2015, unknown + --]] local awful = require("awful") @@ -27,6 +26,8 @@ local quake = {} function quake:display() if self.followtag then self.screen = awful.screen.focused() end + local toscan = self.screen + if self.onlyone then toscan = nil end -- First, we locate the client local client = nil @@ -34,7 +35,7 @@ function quake:display() for c in awful.client.iterate(function (c) -- c.name may be changed! return c.instance == self.name - end, nil, self.screen) + end, nil, toscan) do i = i + 1 if i == 1 then @@ -64,7 +65,7 @@ function quake:display() client.floating = true client.border_width = self.border client.size_hints_honor = false - client:geometry(self:compute_size()) + client:geometry(self.geometry[self.screen] or self:compute_size()) -- Set not sticky and on top client.sticky = false @@ -128,6 +129,7 @@ function quake:new(config) conf.border = conf.border or 1 -- client border width conf.visible = conf.visible or false -- initially not visible conf.followtag = conf.followtag or false -- spawn on currently focused screen + conf.onlyone = conf.onlyone or false -- one instance for all screens conf.overlap = conf.overlap or false -- overlap wibox conf.screen = conf.screen or awful.screen.focused() conf.settings = conf.settings