From 2ddb55bc44dd0ea06e8caa40798d27f907169c07 Mon Sep 17 00:00:00 2001 From: Jure Varlec Date: Thu, 4 May 2017 11:03:46 +0200 Subject: [PATCH] quake: add a new option `onlyone`. This option allows using a single instance of the app with multiple screens instead of having a separate app for each screen. It works better if there is only one instance of the quake object, i.e. local quake = lain.util.quake({onlyone=true}) and awful.key({ modkey, }, "z", function () quake:toggle() end), --- util/quake.lua | 5 ++++- wiki | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/util/quake.lua b/util/quake.lua index 4c42803..0f6b54a 100644 --- a/util/quake.lua +++ b/util/quake.lua @@ -27,6 +27,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 +36,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 @@ -128,6 +130,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 diff --git a/wiki b/wiki index 5131d90..6e7fa13 160000 --- a/wiki +++ b/wiki @@ -1 +1 @@ -Subproject commit 5131d9098ac534b788de8be181b73ad2211d5d2d +Subproject commit 6e7fa1373fe54c6aed9a9dbbe226c62102e4c623 -- 2.39.2