awful.layout.suit: remove tile
Signed-off-by: Julien Danjou <julien@danjou.info>
|
@ -64,10 +64,6 @@ end
|
||||||
|
|
||||||
local layouts_name =
|
local layouts_name =
|
||||||
{
|
{
|
||||||
[suit.tile] = "tile",
|
|
||||||
[suit.tile.left] = "tileleft",
|
|
||||||
[suit.tile.bottom] = "tilebottom",
|
|
||||||
[suit.tile.top] = "tiletop",
|
|
||||||
[suit.vile] = "vile",
|
[suit.vile] = "vile",
|
||||||
[suit.vile.left] = "vileleft",
|
[suit.vile.left] = "vileleft",
|
||||||
[suit.vile.bottom] = "vilebottom",
|
[suit.vile.bottom] = "vilebottom",
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
require("awful.layout.suit.max")
|
require("awful.layout.suit.max")
|
||||||
require("awful.layout.suit.tile")
|
|
||||||
require("awful.layout.suit.vile")
|
require("awful.layout.suit.vile")
|
||||||
require("awful.layout.suit.fair")
|
require("awful.layout.suit.fair")
|
||||||
require("awful.layout.suit.floating")
|
require("awful.layout.suit.floating")
|
||||||
|
|
|
@ -1,168 +0,0 @@
|
||||||
---------------------------------------------------------------------------
|
|
||||||
-- @author Julien Danjou <julien@danjou.info>
|
|
||||||
-- @copyright 2008 Julien Danjou
|
|
||||||
-- @release @AWESOME_VERSION@
|
|
||||||
---------------------------------------------------------------------------
|
|
||||||
|
|
||||||
-- Grab environment we need
|
|
||||||
local setmetatable = setmetatable
|
|
||||||
local ipairs = ipairs
|
|
||||||
local math = math
|
|
||||||
local client = require("awful.client")
|
|
||||||
local tag = require("awful.tag")
|
|
||||||
local capi =
|
|
||||||
{
|
|
||||||
screen = screen
|
|
||||||
}
|
|
||||||
|
|
||||||
--- Tiled layouts module for awful
|
|
||||||
module("awful.layout.suit.tile")
|
|
||||||
|
|
||||||
local function tile(_, screen, position)
|
|
||||||
if not position then position = "right" end
|
|
||||||
local t = tag.selected(screen)
|
|
||||||
local nmaster = tag.getnmaster(t)
|
|
||||||
local mwfact = tag.getmwfact(t)
|
|
||||||
local ncol = tag.getncol(t)
|
|
||||||
|
|
||||||
local wa = capi.screen[screen].workarea
|
|
||||||
local cls = client.tiled(screen)
|
|
||||||
|
|
||||||
local masterwin = math.min(#cls, nmaster)
|
|
||||||
local otherwin = math.max(#cls - masterwin, 0);
|
|
||||||
|
|
||||||
local mh, mw
|
|
||||||
if nmaster > 0 then
|
|
||||||
if position == "right" or position == "left" then
|
|
||||||
if masterwin > 0 then
|
|
||||||
mh = wa.height / masterwin
|
|
||||||
else
|
|
||||||
mh = wa.height
|
|
||||||
end
|
|
||||||
if otherwin > 0 then
|
|
||||||
mw = wa.width * mwfact
|
|
||||||
else
|
|
||||||
mw = wa.width
|
|
||||||
end
|
|
||||||
else
|
|
||||||
if otherwin > 0 then
|
|
||||||
mh = wa.height * mwfact
|
|
||||||
else
|
|
||||||
mh = wa.height
|
|
||||||
end
|
|
||||||
if masterwin > 0 then
|
|
||||||
mw = wa.width / masterwin
|
|
||||||
else
|
|
||||||
mw = wa.width
|
|
||||||
end
|
|
||||||
end
|
|
||||||
else
|
|
||||||
mh = 0
|
|
||||||
mw = 0
|
|
||||||
end
|
|
||||||
|
|
||||||
local real_ncol
|
|
||||||
if ncol > 0 then
|
|
||||||
real_ncol = math.min(otherwin, ncol)
|
|
||||||
else
|
|
||||||
real_ncol = math.min(otherwin, 1)
|
|
||||||
end
|
|
||||||
|
|
||||||
for i, c in ipairs(cls) do
|
|
||||||
local geometry = {}
|
|
||||||
|
|
||||||
-- Master windows
|
|
||||||
if i <= nmaster then
|
|
||||||
if position == "right" then
|
|
||||||
geometry.y = wa.y + (i - 1) * mh
|
|
||||||
geometry.x = wa.x
|
|
||||||
elseif position == "left" then
|
|
||||||
geometry.y = wa.y + (i - 1) * mh
|
|
||||||
geometry.x = wa.x + (wa.width - mw)
|
|
||||||
elseif position == "top" then
|
|
||||||
geometry.x = wa.x + (i - 1) * mw
|
|
||||||
geometry.y = wa.y + (wa.height - mh)
|
|
||||||
else
|
|
||||||
geometry.x = wa.x + (i - 1) * mw
|
|
||||||
geometry.y = wa.y
|
|
||||||
end
|
|
||||||
|
|
||||||
geometry.width = mw
|
|
||||||
geometry.height = mh
|
|
||||||
|
|
||||||
-- Slave windows
|
|
||||||
else
|
|
||||||
local win_by_col = math.ceil(otherwin / real_ncol)
|
|
||||||
real_ncol = math.ceil(otherwin / win_by_col)
|
|
||||||
local current_col = math.floor((i - 1 - nmaster) / win_by_col)
|
|
||||||
|
|
||||||
if position == "right" or position == "left" then
|
|
||||||
if otherwin <= real_ncol then
|
|
||||||
geometry.height = wa.height
|
|
||||||
elseif (otherwin % win_by_col) ~= 0 and (current_col == real_ncol - 1) then
|
|
||||||
geometry.height = math.floor(wa.height / (otherwin % win_by_col))
|
|
||||||
else
|
|
||||||
geometry.height = math.floor(wa.height / win_by_col)
|
|
||||||
end
|
|
||||||
|
|
||||||
geometry.width = math.floor((wa.width - mw) / real_ncol)
|
|
||||||
|
|
||||||
if otherwin <= real_ncol then
|
|
||||||
geometry.y = wa.y
|
|
||||||
else
|
|
||||||
geometry.y = wa.y + ((i - 1 - nmaster) % win_by_col) *
|
|
||||||
geometry.height
|
|
||||||
end
|
|
||||||
geometry.x = wa.x + current_col * geometry.width
|
|
||||||
|
|
||||||
if position == "right" then
|
|
||||||
geometry.x = geometry.x + mw
|
|
||||||
end
|
|
||||||
else
|
|
||||||
if otherwin <= real_ncol then
|
|
||||||
geometry.width = wa.width
|
|
||||||
elseif (otherwin % win_by_col) ~= 0 and (current_col == real_ncol - 1) then
|
|
||||||
geometry.width = math.floor(wa.width / (otherwin % win_by_col))
|
|
||||||
else
|
|
||||||
geometry.width = math.floor(wa.width / win_by_col)
|
|
||||||
end
|
|
||||||
|
|
||||||
geometry.height = math.floor((wa.height - mh) / real_ncol)
|
|
||||||
|
|
||||||
if otherwin <= real_ncol then
|
|
||||||
geometry.x = wa.x
|
|
||||||
else
|
|
||||||
geometry.x = wa.x + ((i - 1 - nmaster) % win_by_col) *
|
|
||||||
geometry.width
|
|
||||||
end
|
|
||||||
|
|
||||||
geometry.y = wa.y + current_col * geometry.height
|
|
||||||
|
|
||||||
if position == "bottom" then
|
|
||||||
geometry.y = geometry.y + mh
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
c:geometry(geometry)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
--- The main tile algo, on left.
|
|
||||||
-- @param screen The screen number to tile.
|
|
||||||
function left(screen)
|
|
||||||
return tile(nil, screen, "left")
|
|
||||||
end
|
|
||||||
|
|
||||||
--- The main tile algo, on bottom.
|
|
||||||
-- @param screen The screen number to tile.
|
|
||||||
function bottom(screen)
|
|
||||||
return tile(nil, screen, "bottom")
|
|
||||||
end
|
|
||||||
|
|
||||||
--- The main tile algo, on top.
|
|
||||||
-- @param screen The screen number to tile.
|
|
||||||
function top(screen)
|
|
||||||
return tile(nil, screen, "top")
|
|
||||||
end
|
|
||||||
|
|
||||||
setmetatable(_M, { __call = tile })
|
|
|
@ -349,49 +349,6 @@ local function client_resize_magnifier(c, corner)
|
||||||
end, corner .. "_corner")
|
end, corner .. "_corner")
|
||||||
end
|
end
|
||||||
|
|
||||||
local function client_resize_tiled(c, lay)
|
|
||||||
local wa = capi.screen[c.screen].workarea
|
|
||||||
local mwfact = tag.getmwfact()
|
|
||||||
local cursor
|
|
||||||
if lay == layout.suit.tile then
|
|
||||||
capi.mouse.coords({ x = wa.x + wa.width * mwfact })
|
|
||||||
cursor = "sb_h_double_arrow"
|
|
||||||
elseif lay == layout.suit.tile.left then
|
|
||||||
capi.mouse.coords({ x = wa.x + wa.width * (1 - mwfact) })
|
|
||||||
cursor = "sb_h_double_arrow"
|
|
||||||
elseif lay == layout.suit.tile.bottom then
|
|
||||||
capi.mouse.coords({ y = wa.y + wa.height * mwfact })
|
|
||||||
cursor = "sb_v_double_arrow"
|
|
||||||
else
|
|
||||||
capi.mouse.coords({ y = wa.y + wa.height * (1 - mwfact) })
|
|
||||||
cursor = "sb_v_double_arrow"
|
|
||||||
end
|
|
||||||
|
|
||||||
capi.mousegrabber.run(function (mouse)
|
|
||||||
for k, v in ipairs(mouse.buttons) do
|
|
||||||
if v then
|
|
||||||
local fact_x = (mouse.x - wa.x) / wa.width
|
|
||||||
local fact_y = (mouse.y - wa.y) / wa.height
|
|
||||||
local mwfact
|
|
||||||
|
|
||||||
if lay == layout.suit.tile then
|
|
||||||
mwfact = fact_x
|
|
||||||
elseif lay == layout.suit.tile.left then
|
|
||||||
mwfact = 1 - fact_x
|
|
||||||
elseif lay == layout.suit.tile.bottom then
|
|
||||||
mwfact = fact_y
|
|
||||||
else
|
|
||||||
mwfact = 1 - fact_y
|
|
||||||
end
|
|
||||||
|
|
||||||
tag.setmwfact(math.min(math.max(mwfact, 0.01), 0.99), tag.selected(c.screen))
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
end
|
|
||||||
return false
|
|
||||||
end, cursor)
|
|
||||||
end
|
|
||||||
|
|
||||||
local function client_resize_viled(c, lay)
|
local function client_resize_viled(c, lay)
|
||||||
local wa = capi.screen[c.screen].workarea
|
local wa = capi.screen[c.screen].workarea
|
||||||
local mwfact = tag.getmwfact()
|
local mwfact = tag.getmwfact()
|
||||||
|
@ -572,11 +529,6 @@ function client.resize(c, corner)
|
||||||
|
|
||||||
if lay == layout.suit.floating or aclient.floating.get(c) then
|
if lay == layout.suit.floating or aclient.floating.get(c) then
|
||||||
return client_resize_floating(c, corner, fixed_x, fixed_y)
|
return client_resize_floating(c, corner, fixed_x, fixed_y)
|
||||||
elseif lay == layout.suit.tile
|
|
||||||
or lay == layout.suit.tile.left
|
|
||||||
or lay == layout.suit.tile.top
|
|
||||||
or lay == layout.suit.tile.bottom then
|
|
||||||
return client_resize_tiled(c, lay)
|
|
||||||
elseif lay == layout.suit.vile
|
elseif lay == layout.suit.vile
|
||||||
or lay == layout.suit.vile.left
|
or lay == layout.suit.vile.left
|
||||||
or lay == layout.suit.vile.top
|
or lay == layout.suit.vile.top
|
||||||
|
|
Before Width: | Height: | Size: 174 B |
Before Width: | Height: | Size: 195 B |
Before Width: | Height: | Size: 216 B |
Before Width: | Height: | Size: 172 B |
Before Width: | Height: | Size: 170 B |
Before Width: | Height: | Size: 195 B |
Before Width: | Height: | Size: 215 B |
Before Width: | Height: | Size: 168 B |
|
@ -56,10 +56,6 @@ layout_fairv = @AWESOME_THEMES_PATH@/default/layouts/fairvw.png
|
||||||
layout_floating = @AWESOME_THEMES_PATH@/default/layouts/floatingw.png
|
layout_floating = @AWESOME_THEMES_PATH@/default/layouts/floatingw.png
|
||||||
layout_magnifier = @AWESOME_THEMES_PATH@/default/layouts/magnifierw.png
|
layout_magnifier = @AWESOME_THEMES_PATH@/default/layouts/magnifierw.png
|
||||||
layout_max = @AWESOME_THEMES_PATH@/default/layouts/maxw.png
|
layout_max = @AWESOME_THEMES_PATH@/default/layouts/maxw.png
|
||||||
layout_tilebottom = @AWESOME_THEMES_PATH@/default/layouts/tilebottomw.png
|
|
||||||
layout_tileleft = @AWESOME_THEMES_PATH@/default/layouts/tileleftw.png
|
|
||||||
layout_tile = @AWESOME_THEMES_PATH@/default/layouts/tilew.png
|
|
||||||
layout_tiletop = @AWESOME_THEMES_PATH@/default/layouts/tiletopw.png
|
|
||||||
layout_vilebottom = @AWESOME_THEMES_PATH@/default/layouts/vilebottomw.png
|
layout_vilebottom = @AWESOME_THEMES_PATH@/default/layouts/vilebottomw.png
|
||||||
layout_vileleft = @AWESOME_THEMES_PATH@/default/layouts/vileleftw.png
|
layout_vileleft = @AWESOME_THEMES_PATH@/default/layouts/vileleftw.png
|
||||||
layout_vile = @AWESOME_THEMES_PATH@/default/layouts/vilew.png
|
layout_vile = @AWESOME_THEMES_PATH@/default/layouts/vilew.png
|
||||||
|
|
Before Width: | Height: | Size: 383 B |
Before Width: | Height: | Size: 335 B |
Before Width: | Height: | Size: 367 B |
Before Width: | Height: | Size: 340 B |
|
@ -27,10 +27,6 @@ layout_floating = @AWESOME_THEMES_PATH@/sky/layouts/floating.png
|
||||||
layout_magnifier = @AWESOME_THEMES_PATH@/sky/layouts/magnifier.png
|
layout_magnifier = @AWESOME_THEMES_PATH@/sky/layouts/magnifier.png
|
||||||
layout_max = @AWESOME_THEMES_PATH@/sky/layouts/max.png
|
layout_max = @AWESOME_THEMES_PATH@/sky/layouts/max.png
|
||||||
layout_fullscreen = @AWESOME_THEMES_PATH@/sky/layouts/fullscreen.png
|
layout_fullscreen = @AWESOME_THEMES_PATH@/sky/layouts/fullscreen.png
|
||||||
layout_tilebottom = @AWESOME_THEMES_PATH@/sky/layouts/tilebottom.png
|
|
||||||
layout_tileleft = @AWESOME_THEMES_PATH@/sky/layouts/tileleft.png
|
|
||||||
layout_tile = @AWESOME_THEMES_PATH@/sky/layouts/tile.png
|
|
||||||
layout_tiletop = @AWESOME_THEMES_PATH@/sky/layouts/tiletop.png
|
|
||||||
layout_vilebottom = @AWESOME_THEMES_PATH@/sky/layouts/vilebottom.png
|
layout_vilebottom = @AWESOME_THEMES_PATH@/sky/layouts/vilebottom.png
|
||||||
layout_vileleft = @AWESOME_THEMES_PATH@/sky/layouts/vileleft.png
|
layout_vileleft = @AWESOME_THEMES_PATH@/sky/layouts/vileleft.png
|
||||||
layout_vile = @AWESOME_THEMES_PATH@/sky/layouts/vile.png
|
layout_vile = @AWESOME_THEMES_PATH@/sky/layouts/vile.png
|
||||||
|
|