X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/354fa23548674b83620ea69d42cffdd707e13dbf..7e4175f7aaef5c690afca3bc987107e2193a58df:/util/quake.lua

diff --git a/util/quake.lua b/util/quake.lua
index 8a530f3..c563695 100644
--- a/util/quake.lua
+++ b/util/quake.lua
@@ -54,9 +54,9 @@ function quake:display()
 
     if not client then
         -- The client does not exist, we spawn it
-        awful.spawn(string.format("%s %s %s", self.app,
-                    string.format(self.argname, self.name), self.extra),
-                    false, self.screen)
+        cmd = string.format("%s %s %s", self.app,
+              string.format(self.argname, self.name), self.extra)
+        awful.spawn(cmd, { tag = self.screen.selected_tag })
         self.notexist = true
         return
     end
@@ -97,7 +97,12 @@ function quake:display()
 end
 
 function quake:compute_size()
-    local geom = screen[self.screen].workarea
+    local geom
+    if not self.overlap then
+        geom = screen[self.screen].workarea
+    else
+        geom = screen[self.screen].geometry
+    end
     local width, height = self.width, self.height
     if width  <= 1 then width = math.floor(geom.width * width) - 2 * self.border end
     if height <= 1 then height = math.floor(geom.height * height) end
@@ -114,14 +119,15 @@ end
 function quake:new(config)
     local conf = config or {}
 
-    conf.app       = conf.app       or "xterm"    -- application to spawn
-    conf.name      = conf.name      or "QuakeDD"  -- window name
-    conf.argname   = conf.argname   or "-name %s" -- how to specify window name
-    conf.extra     = conf.extra     or ""         -- extra arguments
-    conf.visible   = conf.visible   or false      -- initially not visible
-    conf.border    = conf.border    or 1          -- client border width
-    conf.followtag = conf.followtag or true       -- spawn on currently focused screen
-    conf.screen    = conf.screen    or awful.screen.focused()
+    conf.app        = conf.app       or "xterm"    -- application to spawn
+    conf.name       = conf.name      or "QuakeDD"  -- window name
+    conf.argname    = conf.argname   or "-name %s" -- how to specify window name
+    conf.extra      = conf.extra     or ""         -- extra arguments
+    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.overlap    = conf.overlap   or false      -- overlap wibox
+    conf.screen     = conf.screen    or awful.screen.focused()
 
     -- If width or height <= 1 this is a proportion of the workspace
     conf.height       = conf.height       or 0.25     -- height