mirror of https://github.com/lcpz/lain.git
util: magnify_client/mc: added width and height factors as optional args
This commit is contained in:
parent
133fe63b85
commit
c23271b418
|
@ -67,28 +67,28 @@ function util.menu_clients_current_tags(menu, args)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Magnify a client: set it to "float" and resize it.
|
-- Magnify a client: set it to "float" and resize it.
|
||||||
function util.magnify_client(c)
|
function util.magnify_client(c, width_f, height_f)
|
||||||
if c and not c.floating then
|
if c and not c.floating then
|
||||||
util.mc(c)
|
|
||||||
util.magnified_client = c
|
util.magnified_client = c
|
||||||
|
util.mc(c, width_f, height_f)
|
||||||
else
|
else
|
||||||
c.floating = false
|
|
||||||
util.magnified_client = nil
|
util.magnified_client = nil
|
||||||
|
c.floating = false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- https://github.com/copycat-killer/lain/issues/195
|
-- https://github.com/copycat-killer/lain/issues/195
|
||||||
function util.mc(c)
|
function util.mc(c, width_f, height_f)
|
||||||
c = c or util.magnified_client
|
c = c or util.magnified_client
|
||||||
if not c then return end
|
if not c then return end
|
||||||
|
|
||||||
c.floating = true
|
c.floating = true
|
||||||
local s = awful.screen.focused()
|
local s = awful.screen.focused()
|
||||||
local mg = s.geometry
|
local mg = s.workarea
|
||||||
local mwfact = s.selected_tag.master_width_factor or 0.5
|
|
||||||
local g = {}
|
local g = {}
|
||||||
|
local mwfact = width_f or s.selected_tag.master_width_factor or 0.5
|
||||||
g.width = sqrt(mwfact) * mg.width
|
g.width = sqrt(mwfact) * mg.width
|
||||||
g.height = sqrt(mwfact) * mg.height
|
g.height = sqrt(height_f or mwfact) * mg.height
|
||||||
g.x = mg.x + (mg.width - g.width) / 2
|
g.x = mg.x + (mg.width - g.width) / 2
|
||||||
g.y = mg.y + (mg.height - g.height) / 2
|
g.y = mg.y + (mg.height - g.height) / 2
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue