mirror of https://github.com/lcpz/lain.git
Fixed some 1 pixel discrepancies in uselesstile
This commit is contained in:
parent
b658401b33
commit
c477cc64fd
|
@ -37,7 +37,7 @@ end
|
||||||
|
|
||||||
-- Find geometry for secondary windows column
|
-- Find geometry for secondary windows column
|
||||||
local function cut_column(wa, n, index)
|
local function cut_column(wa, n, index)
|
||||||
local width = wa.width / n
|
local width = math.floor(wa.width / n)
|
||||||
local area = { x = wa.x + (index - 1) * width, y = wa.y, width = width, height = wa.height }
|
local area = { x = wa.x + (index - 1) * width, y = wa.y, width = width, height = wa.height }
|
||||||
|
|
||||||
return area
|
return area
|
||||||
|
@ -45,7 +45,7 @@ end
|
||||||
|
|
||||||
-- Find geometry for certain window in column
|
-- Find geometry for certain window in column
|
||||||
local function cut_row(wa, factor, index, used)
|
local function cut_row(wa, factor, index, used)
|
||||||
local height = wa.height * factor.window[index] / factor.total
|
local height = math.floor(wa.height * factor.window[index] / factor.total)
|
||||||
local area = { x = wa.x, y = wa.y + used, width = wa.width, height = height }
|
local area = { x = wa.x, y = wa.y + used, width = wa.width, height = height }
|
||||||
|
|
||||||
return area
|
return area
|
||||||
|
@ -55,8 +55,8 @@ end
|
||||||
local function size_correction(c, geometry, useless_gap)
|
local function size_correction(c, geometry, useless_gap)
|
||||||
geometry.width = math.max(geometry.width - 2 * c.border_width - useless_gap, 1)
|
geometry.width = math.max(geometry.width - 2 * c.border_width - useless_gap, 1)
|
||||||
geometry.height = math.max(geometry.height - 2 * c.border_width - useless_gap, 1)
|
geometry.height = math.max(geometry.height - 2 * c.border_width - useless_gap, 1)
|
||||||
geometry.x = geometry.x + useless_gap / 2
|
geometry.x = math.floor(geometry.x + useless_gap / 2)
|
||||||
geometry.y = geometry.y + useless_gap / 2
|
geometry.y = math.floor(geometry.y + useless_gap / 2)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Check size factor for group of clients and calculate total
|
-- Check size factor for group of clients and calculate total
|
||||||
|
@ -85,6 +85,7 @@ local function tile_column(canvas, area, list, useless_gap, transformation, winf
|
||||||
|
|
||||||
for i, c in ipairs(list) do
|
for i, c in ipairs(list) do
|
||||||
local g = cut_row(area, factor, i, used)
|
local g = cut_row(area, factor, i, used)
|
||||||
|
if i == #list then g.height = area.height - used end
|
||||||
used = used + g.height
|
used = used + g.height
|
||||||
|
|
||||||
-- swap workarea dimensions
|
-- swap workarea dimensions
|
||||||
|
@ -94,6 +95,7 @@ local function tile_column(canvas, area, list, useless_gap, transformation, winf
|
||||||
-- useless gap and border correction
|
-- useless gap and border correction
|
||||||
size_correction(c, g, useless_gap)
|
size_correction(c, g, useless_gap)
|
||||||
|
|
||||||
|
|
||||||
c:geometry(g)
|
c:geometry(g)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -161,7 +163,7 @@ local function tile(p, orientation)
|
||||||
local master_area = {
|
local master_area = {
|
||||||
x = wa.x,
|
x = wa.x,
|
||||||
y = wa.y,
|
y = wa.y,
|
||||||
width = nmaster > 0 and wa.width * mwfact or 0,
|
width = nmaster > 0 and math.floor(wa.width * mwfact) or 0,
|
||||||
height = wa.height
|
height = wa.height
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue