tests: fix indenting/style (#1303)
Basically: > for f in **/*.lua; do vim '+set sw=4' '+norm gg=G' '+wq' "$f"; done
This commit is contained in:
parent
bdb7e90b74
commit
68de588f21
|
@ -355,16 +355,16 @@ local function clear_screen()
|
|||
return
|
||||
end
|
||||
for s in screen do
|
||||
local sur = surface.widget_to_surface(
|
||||
wibox.widget {
|
||||
bg = "#000000",
|
||||
widget = wibox.container.background
|
||||
},
|
||||
s.geometry.width,
|
||||
s.geometry.height
|
||||
)
|
||||
wallpaper.fit(sur, s, "#000000")
|
||||
end
|
||||
local sur = surface.widget_to_surface(
|
||||
wibox.widget {
|
||||
bg = "#000000",
|
||||
widget = wibox.container.background
|
||||
},
|
||||
s.geometry.width,
|
||||
s.geometry.height
|
||||
)
|
||||
wallpaper.fit(sur, s, "#000000")
|
||||
end
|
||||
end
|
||||
|
||||
-- Make it easier to debug the tests by showing the screen geometry when the
|
||||
|
@ -419,97 +419,97 @@ local function add_steps(real_steps, new_steps)
|
|||
end)
|
||||
|
||||
table.insert(real_steps, function()
|
||||
clear_screen()
|
||||
local keep = dispo.keep or false
|
||||
local old = {}
|
||||
local geos = {}
|
||||
clear_screen()
|
||||
local keep = dispo.keep or false
|
||||
local old = {}
|
||||
local geos = {}
|
||||
|
||||
check_tag_indexes()
|
||||
|
||||
if keep then
|
||||
for _, sf in ipairs(dispo) do
|
||||
local geo = sf and sf() or nil
|
||||
|
||||
-- If the function return nothing, assume the screen need to
|
||||
-- be destroyed.
|
||||
table.insert(geos, geo or false)
|
||||
end
|
||||
|
||||
-- Removed screens need to be explicit.
|
||||
assert(#geos >= screen.count())
|
||||
|
||||
-- Keep a cache to avoid working with invalid data
|
||||
local old_screens = {}
|
||||
for s in screen do
|
||||
table.insert(old_screens, s)
|
||||
end
|
||||
|
||||
for i, s in ipairs(old_screens) do
|
||||
-- Remove the screen (if no new geometry is given
|
||||
if not geos[i] then
|
||||
s:fake_remove()
|
||||
else
|
||||
local cur_geo = s.geometry
|
||||
for _, v in ipairs {"x", "y", "width", "height" } do
|
||||
cur_geo[v] = geos[i][v] or cur_geo[v]
|
||||
end
|
||||
s:fake_resize(
|
||||
cur_geo.x,
|
||||
cur_geo.y,
|
||||
cur_geo.width,
|
||||
cur_geo.height
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
-- Add the remaining screens
|
||||
for i=#old_screens + 1, #geos do
|
||||
local geo = geos[i]
|
||||
screen.fake_add(geo.x, geo.y, geo.width, geo.height)
|
||||
end
|
||||
|
||||
check_tag_indexes()
|
||||
|
||||
if keep then
|
||||
for _, sf in ipairs(dispo) do
|
||||
local geo = sf and sf() or nil
|
||||
|
||||
-- If the function return nothing, assume the screen need to
|
||||
-- be destroyed.
|
||||
table.insert(geos, geo or false)
|
||||
end
|
||||
|
||||
-- Removed screens need to be explicit.
|
||||
assert(#geos >= screen.count())
|
||||
|
||||
-- Keep a cache to avoid working with invalid data
|
||||
local old_screens = {}
|
||||
for s in screen do
|
||||
table.insert(old_screens, s)
|
||||
end
|
||||
|
||||
for i, s in ipairs(old_screens) do
|
||||
-- Remove the screen (if no new geometry is given
|
||||
if not geos[i] then
|
||||
s:fake_remove()
|
||||
else
|
||||
local cur_geo = s.geometry
|
||||
for _, v in ipairs {"x", "y", "width", "height" } do
|
||||
cur_geo[v] = geos[i][v] or cur_geo[v]
|
||||
end
|
||||
s:fake_resize(
|
||||
cur_geo.x,
|
||||
cur_geo.y,
|
||||
cur_geo.width,
|
||||
cur_geo.height
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
-- Add the remaining screens
|
||||
for i=#old_screens + 1, #geos do
|
||||
local geo = geos[i]
|
||||
screen.fake_add(geo.x, geo.y, geo.width, geo.height)
|
||||
end
|
||||
|
||||
check_tag_indexes()
|
||||
else
|
||||
-- Move all existing screens out of the way (to avoid temporary overlapping)
|
||||
for s in screen do
|
||||
s:fake_resize(canvas_w, canvas_h, 1, 1)
|
||||
table.insert(old, s)
|
||||
end
|
||||
|
||||
-- Add the new screens
|
||||
for _, sf in ipairs(dispo) do
|
||||
local geo = sf()
|
||||
screen.fake_add(geo.x, geo.y, geo.width, geo.height)
|
||||
table.insert(geos, geo)
|
||||
end
|
||||
|
||||
-- Remove old screens
|
||||
for _, s in ipairs(old) do
|
||||
s:fake_remove()
|
||||
end
|
||||
else
|
||||
-- Move all existing screens out of the way (to avoid temporary overlapping)
|
||||
for s in screen do
|
||||
s:fake_resize(canvas_w, canvas_h, 1, 1)
|
||||
table.insert(old, s)
|
||||
end
|
||||
|
||||
show_screens()
|
||||
|
||||
-- Check the result is correct
|
||||
local expected_count = 0
|
||||
for _,v in ipairs(geos) do
|
||||
expected_count = expected_count + (v and 1 or 0)
|
||||
-- Add the new screens
|
||||
for _, sf in ipairs(dispo) do
|
||||
local geo = sf()
|
||||
screen.fake_add(geo.x, geo.y, geo.width, geo.height)
|
||||
table.insert(geos, geo)
|
||||
end
|
||||
|
||||
assert(expected_count == screen.count())
|
||||
for k, geo in ipairs(geos) do
|
||||
if geo then
|
||||
local sgeo = screen[k].geometry
|
||||
assert(geo.x == sgeo.x)
|
||||
assert(geo.y == sgeo.y)
|
||||
assert(geo.width == sgeo.width )
|
||||
assert(geo.height == sgeo.height)
|
||||
end
|
||||
-- Remove old screens
|
||||
for _, s in ipairs(old) do
|
||||
s:fake_remove()
|
||||
end
|
||||
end
|
||||
|
||||
return true
|
||||
end)
|
||||
show_screens()
|
||||
|
||||
-- Check the result is correct
|
||||
local expected_count = 0
|
||||
for _,v in ipairs(geos) do
|
||||
expected_count = expected_count + (v and 1 or 0)
|
||||
end
|
||||
|
||||
assert(expected_count == screen.count())
|
||||
for k, geo in ipairs(geos) do
|
||||
if geo then
|
||||
local sgeo = screen[k].geometry
|
||||
assert(geo.x == sgeo.x)
|
||||
assert(geo.y == sgeo.y)
|
||||
assert(geo.width == sgeo.width )
|
||||
assert(geo.height == sgeo.height)
|
||||
end
|
||||
end
|
||||
|
||||
return true
|
||||
end)
|
||||
|
||||
for _, step in ipairs(new_steps) do
|
||||
table.insert(real_steps, step)
|
||||
|
@ -518,5 +518,5 @@ local function add_steps(real_steps, new_steps)
|
|||
end
|
||||
|
||||
return setmetatable(module, {
|
||||
__call = function(_,...) return add_steps(...) end
|
||||
})
|
||||
__call = function(_,...) return add_steps(...) end
|
||||
})
|
||||
|
|
|
@ -2,7 +2,7 @@ local timer = require("gears.timer")
|
|||
local awful = require("awful")
|
||||
|
||||
local runner = {
|
||||
quit_awesome_on_error = os.getenv('TEST_PAUSE_ON_ERRORS') ~= '1',
|
||||
quit_awesome_on_error = os.getenv('TEST_PAUSE_ON_ERRORS') ~= '1',
|
||||
}
|
||||
|
||||
-- Helpers.
|
||||
|
@ -10,8 +10,8 @@ local runner = {
|
|||
--- Add some rules to awful.rules.rules, after the defaults.
|
||||
local default_rules = awful.util.table.clone(awful.rules.rules)
|
||||
runner.add_to_default_rules = function(r)
|
||||
awful.rules.rules = awful.util.table.clone(default_rules)
|
||||
table.insert(awful.rules.rules, r)
|
||||
awful.rules.rules = awful.util.table.clone(default_rules)
|
||||
table.insert(awful.rules.rules, r)
|
||||
end
|
||||
|
||||
-- Was the runner started already?
|
||||
|
@ -30,72 +30,72 @@ timer.start_new(1, function()
|
|||
end)
|
||||
|
||||
runner.run_steps = function(steps)
|
||||
-- Setup timer/timeout to limit waiting for signal and quitting awesome.
|
||||
-- This would be common for all tests.
|
||||
local t = timer({timeout=0.1})
|
||||
local wait=20
|
||||
local step=1
|
||||
local step_count=0
|
||||
assert(not running, "run_steps() was called twice")
|
||||
running = true
|
||||
t:connect_signal("timeout", function() timer.delayed_call(function()
|
||||
io.flush() -- for "tail -f".
|
||||
step_count = step_count + 1
|
||||
local step_as_string = step..'/'..#steps..' (@'..step_count..')'
|
||||
-- Setup timer/timeout to limit waiting for signal and quitting awesome.
|
||||
-- This would be common for all tests.
|
||||
local t = timer({timeout=0.1})
|
||||
local wait=20
|
||||
local step=1
|
||||
local step_count=0
|
||||
assert(not running, "run_steps() was called twice")
|
||||
running = true
|
||||
t:connect_signal("timeout", function() timer.delayed_call(function()
|
||||
io.flush() -- for "tail -f".
|
||||
step_count = step_count + 1
|
||||
local step_as_string = step..'/'..#steps..' (@'..step_count..')'
|
||||
|
||||
-- Call the current step's function.
|
||||
local success, result = xpcall(function()
|
||||
return steps[step](step_count)
|
||||
end, debug.traceback)
|
||||
-- Call the current step's function.
|
||||
local success, result = xpcall(function()
|
||||
return steps[step](step_count)
|
||||
end, debug.traceback)
|
||||
|
||||
if not success then
|
||||
io.stderr:write('Error: running function for step '
|
||||
..step_as_string..': '..tostring(result)..'!\n')
|
||||
t:stop()
|
||||
if not runner.quit_awesome_on_error then
|
||||
io.stderr:write("Keeping awesome open...\n")
|
||||
return -- keep awesome open on error.
|
||||
end
|
||||
if not success then
|
||||
io.stderr:write('Error: running function for step '
|
||||
..step_as_string..': '..tostring(result)..'!\n')
|
||||
t:stop()
|
||||
if not runner.quit_awesome_on_error then
|
||||
io.stderr:write("Keeping awesome open...\n")
|
||||
return -- keep awesome open on error.
|
||||
end
|
||||
|
||||
elseif result then
|
||||
-- true: test succeeded.
|
||||
if step < #steps then
|
||||
-- Next step.
|
||||
step = step+1
|
||||
step_count = 0
|
||||
wait = 5
|
||||
t:again()
|
||||
return
|
||||
end
|
||||
elseif result then
|
||||
-- true: test succeeded.
|
||||
if step < #steps then
|
||||
-- Next step.
|
||||
step = step+1
|
||||
step_count = 0
|
||||
wait = 5
|
||||
t:again()
|
||||
return
|
||||
end
|
||||
|
||||
elseif result == false then
|
||||
io.stderr:write("Step "..step_as_string.." failed (returned false).")
|
||||
if not runner.quit_awesome_on_error then
|
||||
io.stderr:write("Keeping awesome open...\n")
|
||||
return
|
||||
end
|
||||
elseif result == false then
|
||||
io.stderr:write("Step "..step_as_string.." failed (returned false).")
|
||||
if not runner.quit_awesome_on_error then
|
||||
io.stderr:write("Keeping awesome open...\n")
|
||||
return
|
||||
end
|
||||
|
||||
else
|
||||
wait = wait-1
|
||||
if wait > 0 then
|
||||
t:again()
|
||||
else
|
||||
io.stderr:write("Error: timeout waiting for signal in step "
|
||||
..step_as_string..".\n")
|
||||
t:stop()
|
||||
end
|
||||
return
|
||||
end
|
||||
-- Remove any clients.
|
||||
for _,c in ipairs(client.get()) do
|
||||
c:kill()
|
||||
end
|
||||
if success and result then
|
||||
io.stderr:write("Test finished successfully\n")
|
||||
end
|
||||
awesome.quit()
|
||||
end) end)
|
||||
t:start()
|
||||
else
|
||||
wait = wait-1
|
||||
if wait > 0 then
|
||||
t:again()
|
||||
else
|
||||
io.stderr:write("Error: timeout waiting for signal in step "
|
||||
..step_as_string..".\n")
|
||||
t:stop()
|
||||
end
|
||||
return
|
||||
end
|
||||
-- Remove any clients.
|
||||
for _,c in ipairs(client.get()) do
|
||||
c:kill()
|
||||
end
|
||||
if success and result then
|
||||
io.stderr:write("Test finished successfully\n")
|
||||
end
|
||||
awesome.quit()
|
||||
end) end)
|
||||
t:start()
|
||||
end
|
||||
|
||||
return runner
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
screen[1]._resize {x = 175, width = 128, height = 96} --DOC_HIDE
|
||||
mouse.coords {x=175+60,y=60} --DOC_HIDE
|
||||
|
||||
-- Get the position
|
||||
-- Get the position
|
||||
print(mouse.coords().x)
|
||||
|
||||
-- Change the position
|
||||
-- Change the position
|
||||
mouse.coords {
|
||||
x = 185,
|
||||
y = 10
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
local placement = require("awful.placement")
|
||||
screen[1]._resize {x= 50}
|
||||
for _, pos in ipairs{
|
||||
"top_left", "top_right", "bottom_left", "bottom_right",
|
||||
"left", "right", "top", "bottom", "centered",
|
||||
} do
|
||||
local c1 = client.gen_fake {x = 80, y = 55, width=75, height=50}
|
||||
c1:_hide()
|
||||
placement.align(client.focus, {position = pos, honor_workarea=true})
|
||||
c1:set_label(pos)
|
||||
"top_left", "top_right", "bottom_left", "bottom_right",
|
||||
"left", "right", "top", "bottom", "centered",
|
||||
} do
|
||||
local c1 = client.gen_fake {x = 80, y = 55, width=75, height=50}
|
||||
c1:_hide()
|
||||
placement.align(client.focus, {position = pos, honor_workarea=true})
|
||||
c1:set_label(pos)
|
||||
end
|
||||
|
||||
screen._add_screen {x = 70, y = 260 , width = 128, height = 96}
|
||||
|
|
|
@ -12,5 +12,5 @@ local c = client.gen_fake {x = 45, y = 35, width=40, height=30} --DOC_HIDE
|
|||
awful.placement.bottom(client.focus)
|
||||
|
||||
assert(c.x == screen[1].geometry.width/2-40/2-c.border_width--DOC_HIDE
|
||||
and c.y==screen[1].geometry.height-30-2*c.border_width--DOC_HIDE
|
||||
and c.width==40 and c.height==30)--DOC_HIDE
|
||||
and c.y==screen[1].geometry.height-30-2*c.border_width--DOC_HIDE
|
||||
and c.width==40 and c.height==30)--DOC_HIDE
|
||||
|
|
|
@ -12,8 +12,8 @@ local c = client.gen_fake {x = 45, y = 35, width=40, height=30} --DOC_HIDE
|
|||
awful.placement.bottom_left(client.focus)
|
||||
|
||||
assert( --DOC_HIDE
|
||||
c.x == 0 --DOC_HIDE
|
||||
and c.y+2*c.border_width == screen[1].geometry.height-30 --DOC_HIDE
|
||||
and c.width == 40--DOC_HIDE
|
||||
and c.height == 30--DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
c.x == 0 --DOC_HIDE
|
||||
and c.y+2*c.border_width == screen[1].geometry.height-30 --DOC_HIDE
|
||||
and c.width == 40--DOC_HIDE
|
||||
and c.height == 30--DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -5,7 +5,7 @@ local bw = c.border_width --DOC_HIDE
|
|||
|
||||
-- Left --DOC_HIDE
|
||||
mouse.coords {x=100,y=100} --DOC_HIDE
|
||||
-- Move the mouse to the closest corner of the focused client
|
||||
-- Move the mouse to the closest corner of the focused client
|
||||
awful.placement.closest_corner(mouse, {include_sides=true, parent=c})
|
||||
mouse.push_history() --DOC_HIDE
|
||||
assert(mouse.coords().x == c.x) --DOC_HIDE
|
||||
|
@ -53,8 +53,8 @@ awful.placement.closest_corner(mouse, {include_sides=true, parent=c}) --DOC_HIDE
|
|||
mouse.push_history() --DOC_HIDE
|
||||
assert(mouse.coords().x == c.x and mouse.coords().y == c.y+c.height+2*bw) --DOC_HIDE
|
||||
|
||||
-- It is possible to emulate the mouse API to get the closest corner of
|
||||
-- random area
|
||||
-- It is possible to emulate the mouse API to get the closest corner of
|
||||
-- random area
|
||||
local _, corner = awful.placement.closest_corner(
|
||||
{coords=function() return {x = 100, y=100} end},
|
||||
{include_sides = true, bounding_rect = {x=0, y=0, width=200, height=200}}
|
||||
|
|
|
@ -2,10 +2,10 @@ screen[1]._resize {x = 175, width = 128, height = 96} --DOC_NO_USAGE --DOC_HIDE
|
|||
local awful = {placement = require("awful.placement")} --DOC_HIDE
|
||||
local c = client.gen_fake {x = 220, y = 35, width=40, height=30} --DOC_HIDE
|
||||
|
||||
-- "right" will be replaced by "left"
|
||||
local f = (awful.placement.right + awful.placement.left)
|
||||
f(client.focus)
|
||||
-- "right" will be replaced by "left"
|
||||
local f = (awful.placement.right + awful.placement.left)
|
||||
f(client.focus)
|
||||
|
||||
local sg = screen[1].geometry--DOC_HIDE
|
||||
assert(c.x == sg.x and c.y==sg.height/2-30/2-c.border_width--DOC_HIDE
|
||||
and c.width==40 and c.height==30)--DOC_HIDE
|
||||
and c.width==40 and c.height==30)--DOC_HIDE
|
||||
|
|
|
@ -2,14 +2,14 @@ screen[1]._resize {x = 175, width = 128, height = 96} --DOC_NO_USAGE --DOC_HIDE
|
|||
local awful = {placement = require("awful.placement")} --DOC_HIDE
|
||||
local c = client.gen_fake {x = 220, y = 35, width=40, height=30} --DOC_HIDE
|
||||
|
||||
-- Simulate Windows 7 "edge snap" (also called aero snap) feature
|
||||
local axis = "vertically"
|
||||
-- Simulate Windows 7 "edge snap" (also called aero snap) feature
|
||||
local axis = "vertically"
|
||||
|
||||
local f = awful.placement.scale
|
||||
+ awful.placement.left
|
||||
+ (axis and awful.placement["maximize_"..axis] or nil)
|
||||
local f = awful.placement.scale
|
||||
+ awful.placement.left
|
||||
+ (axis and awful.placement["maximize_"..axis] or nil)
|
||||
|
||||
local geo = f(client.focus, {honor_workarea=true, to_percent = 0.5})
|
||||
local geo = f(client.focus, {honor_workarea=true, to_percent = 0.5})
|
||||
|
||||
local wa = screen[1].workarea--DOC_HIDE
|
||||
assert(c.x == wa.x and geo.x == wa.x)--DOC_HIDE
|
||||
|
|
|
@ -12,4 +12,4 @@ local c = client.gen_fake {x = 45, y = 35, width=40, height=30} --DOC_HIDE
|
|||
awful.placement.left(client.focus)
|
||||
|
||||
assert(c.x == 0 and c.y==screen[1].geometry.height/2-30/2-c.border_width--DOC_HIDE
|
||||
and c.width==40 and c.height==30)--DOC_HIDE
|
||||
and c.width==40 and c.height==30)--DOC_HIDE
|
||||
|
|
|
@ -4,15 +4,15 @@ screen._add_screen {x = 280, y = 0, width = 128, height = 96} --DOC_HIDE
|
|||
local placement = require("awful.placement") --DOC_HIDE
|
||||
|
||||
for k, pos in ipairs{ --DOC_HIDE
|
||||
"", "vertical", "horizontal" --DOC_HIDE
|
||||
} do --DOC_HIDE
|
||||
local c1 = client.gen_fake {--DOC_HIDE
|
||||
x = screen[k].geometry.x+40, --DOC_HIDE
|
||||
y = screen[k].geometry.y+40, width=75, height=50, screen=screen[k]} --DOC_HIDE
|
||||
"", "vertical", "horizontal" --DOC_HIDE
|
||||
} do --DOC_HIDE
|
||||
local c1 = client.gen_fake {--DOC_HIDE
|
||||
x = screen[k].geometry.x+40, --DOC_HIDE
|
||||
y = screen[k].geometry.y+40, width=75, height=50, screen=screen[k]} --DOC_HIDE
|
||||
placement.maximize(c1, {axis = pos ~= "" and pos or nil}) --DOC_HIDE
|
||||
|
||||
if k == 1 then --DOC_HIDE
|
||||
assert(c1.width+2*c1.border_width == screen[1].geometry.width and --DOC_HIDE
|
||||
c1.height+2*c1.border_width == screen[1].geometry.height) --DOC_HIDE
|
||||
c1.height+2*c1.border_width == screen[1].geometry.height) --DOC_HIDE
|
||||
end --DOC_HIDE
|
||||
end --DOC_HIDE
|
||||
|
|
|
@ -8,8 +8,8 @@ local function test_touch_mouse(c)
|
|||
local coords = mouse.coords()
|
||||
|
||||
return c:geometry().x == coords.x or c:geometry().y == coords.y
|
||||
or c:geometry().x+c:geometry().width+2*c.border_width == coords.x
|
||||
or c:geometry().y+c:geometry().height+2*c.border_width == coords.y
|
||||
or c:geometry().x+c:geometry().width+2*c.border_width == coords.x
|
||||
or c:geometry().y+c:geometry().height+2*c.border_width == coords.y
|
||||
end
|
||||
|
||||
for s=1, 8 do
|
||||
|
|
|
@ -6,11 +6,11 @@ screen._add_screen {x = 140, y = 110, width = 128, height = 96}
|
|||
local placement = require("awful.placement")
|
||||
|
||||
for k, pos in ipairs{
|
||||
"up", "down", "left", "right"
|
||||
} do
|
||||
local c1 = client.gen_fake {--DOC_HIDE
|
||||
x = screen[k].geometry.x+20,
|
||||
y = screen[k].geometry.y+20, width=75, height=50, screen=screen[k]}
|
||||
"up", "down", "left", "right"
|
||||
} do
|
||||
local c1 = client.gen_fake {--DOC_HIDE
|
||||
x = screen[k].geometry.x+20,
|
||||
y = screen[k].geometry.y+20, width=75, height=50, screen=screen[k]}
|
||||
|
||||
placement.stretch(c1, {direction=pos})
|
||||
end
|
||||
|
|
|
@ -15,4 +15,4 @@ assert(c.x==45) --DOC_HIDE
|
|||
assert(c.y==35) --DOC_HIDE
|
||||
assert(c.width == 40) --DOC_HIDE
|
||||
assert(c.y+c.height+2*c.border_width == --DOC_HIDE
|
||||
screen[1].geometry.y + screen[1].geometry.height) --DOC_HIDE
|
||||
screen[1].geometry.y + screen[1].geometry.height) --DOC_HIDE
|
||||
|
|
|
@ -12,4 +12,4 @@ local c = client.gen_fake {x = 45, y = 35, width=40, height=30} --DOC_HIDE
|
|||
awful.placement.top_right(client.focus)
|
||||
|
||||
assert(c.x == screen[1].geometry.width-40-2*c.border_width and c.y==0 --DOC_HIDE
|
||||
and c.width==40 and c.height==30)--DOC_HIDE
|
||||
and c.width==40 and c.height==30)--DOC_HIDE
|
||||
|
|
|
@ -4,9 +4,9 @@ shape.infobubble(cr, 70, 70)
|
|||
show(cr) --DOC_HIDE
|
||||
|
||||
shape.transform(shape.infobubble) : translate(0, 20)
|
||||
: rotate_at(35,35,math.pi) (cr,70,20,10, 5, 35 - 5)
|
||||
: rotate_at(35,35,math.pi) (cr,70,20,10, 5, 35 - 5)
|
||||
show(cr) --DOC_HIDE
|
||||
|
||||
shape.transform(shape.infobubble)
|
||||
: rotate_at(35,35,3*math.pi/2) (cr,70,70, nil, nil, 40)
|
||||
: rotate_at(35,35,3*math.pi/2) (cr,70,70, nil, nil, 40)
|
||||
show(cr) --DOC_HIDE
|
||||
|
|
|
@ -105,9 +105,9 @@ function client.gen_fake(args)
|
|||
assert(not args.screen or (args.screen == ret.screen))
|
||||
|
||||
return setmetatable(ret, {
|
||||
__index = function(...) return meta.__index(...) end,
|
||||
__newindex = function(...) return meta.__newindex(...) end
|
||||
})
|
||||
__index = function(...) return meta.__index(...) end,
|
||||
__newindex = function(...) return meta.__newindex(...) end
|
||||
})
|
||||
end
|
||||
|
||||
function client.get(s)
|
||||
|
|
|
@ -11,14 +11,14 @@ local function new_drawin(_, args)
|
|||
end
|
||||
|
||||
return setmetatable(ret, {
|
||||
__index = function(...) return meta.__index(...) end,
|
||||
__newindex = function(...) return meta.__newindex(...) end
|
||||
})
|
||||
__index = function(...) return meta.__index(...) end,
|
||||
__newindex = function(...) return meta.__newindex(...) end
|
||||
})
|
||||
end
|
||||
|
||||
return setmetatable(drawin, {
|
||||
__call = new_drawin,
|
||||
})
|
||||
__call = new_drawin,
|
||||
})
|
||||
|
||||
-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80
|
||||
|
||||
|
|
|
@ -26,26 +26,26 @@ local function create_screen(args)
|
|||
local wa = args.workarea_sides or 10
|
||||
|
||||
return setmetatable(s,{ __index = function(_, key)
|
||||
if key == "geometry" then
|
||||
return {
|
||||
x = geo.x or 0,
|
||||
y = geo.y or 0,
|
||||
width = geo.width ,
|
||||
height = geo.height,
|
||||
}
|
||||
elseif key == "workarea" then
|
||||
return {
|
||||
x = (geo.x or 0) + wa ,
|
||||
y = (geo.y or 0) + wa ,
|
||||
width = geo.width - 2*wa,
|
||||
height = geo.height - 2*wa,
|
||||
}
|
||||
else
|
||||
return meta.__index(_, key)
|
||||
end
|
||||
end,
|
||||
__newindex = function(...) return meta.__newindex(...) end
|
||||
})
|
||||
if key == "geometry" then
|
||||
return {
|
||||
x = geo.x or 0,
|
||||
y = geo.y or 0,
|
||||
width = geo.width ,
|
||||
height = geo.height,
|
||||
}
|
||||
elseif key == "workarea" then
|
||||
return {
|
||||
x = (geo.x or 0) + wa ,
|
||||
y = (geo.y or 0) + wa ,
|
||||
width = geo.width - 2*wa,
|
||||
height = geo.height - 2*wa,
|
||||
}
|
||||
else
|
||||
return meta.__index(_, key)
|
||||
end
|
||||
end,
|
||||
__newindex = function(...) return meta.__newindex(...) end
|
||||
})
|
||||
end
|
||||
|
||||
local screens = {}
|
||||
|
|
|
@ -24,14 +24,14 @@ local function new_tag(_, args)
|
|||
table.insert(root._tags, ret)
|
||||
|
||||
return setmetatable(ret, {
|
||||
__index = function(...) return meta.__index(...) end,
|
||||
__newindex = function(...) return meta.__newindex(...) end
|
||||
})
|
||||
__index = function(...) return meta.__index(...) end,
|
||||
__newindex = function(...) return meta.__newindex(...) end
|
||||
})
|
||||
end
|
||||
|
||||
return setmetatable(tag, {
|
||||
__call = new_tag,
|
||||
})
|
||||
__call = new_tag,
|
||||
})
|
||||
|
||||
-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
local gears = require("gears") --DOC_HIDE
|
||||
|
||||
-- Create a class for this object. It will be used as a backup source for
|
||||
-- methods and accessors. It is also possible to set them directly on the
|
||||
-- object.
|
||||
-- Create a class for this object. It will be used as a backup source for
|
||||
-- methods and accessors. It is also possible to set them directly on the
|
||||
-- object.
|
||||
local class = {}
|
||||
|
||||
function class:get_foo()
|
||||
|
@ -39,7 +39,7 @@ print(o.foo)
|
|||
|
||||
o:method(1, 2, 3)
|
||||
|
||||
-- Random properties can also be added, the signal will be emitted automatically.
|
||||
-- Random properties can also be added, the signal will be emitted automatically.
|
||||
|
||||
o:connect_signal("property::something", function(obj, value)
|
||||
assert(obj == o)
|
||||
|
|
|
@ -2,23 +2,23 @@ local gears = require("gears") --DOC_HIDE
|
|||
|
||||
local o = gears.object{}
|
||||
|
||||
-- Function can be attached to signals
|
||||
-- Function can be attached to signals
|
||||
local function slot(obj, a, b, c)
|
||||
print("In slot", obj, a, b, c)
|
||||
end
|
||||
|
||||
o:connect_signal("my_signal", slot)
|
||||
|
||||
-- Emitting can be done without arguments. In that case, the object will be
|
||||
-- implicitly added as an argument.
|
||||
-- Emitting can be done without arguments. In that case, the object will be
|
||||
-- implicitly added as an argument.
|
||||
o:emit_signal "my_signal"
|
||||
|
||||
-- It is also possible to add as many random arguments are required.
|
||||
-- It is also possible to add as many random arguments are required.
|
||||
o:emit_signal("my_signal", "foo", "bar", 42)
|
||||
|
||||
-- Finally, to allow the object to be garbage collected (the memory freed), it
|
||||
-- is necessary to disconnect the signal or use `weak_connect_signal`
|
||||
-- Finally, to allow the object to be garbage collected (the memory freed), it
|
||||
-- is necessary to disconnect the signal or use `weak_connect_signal`
|
||||
o:disconnect_signal("my_signal", slot)
|
||||
|
||||
-- This time, the `slot` wont be called as it is no longer connected.
|
||||
-- This time, the `slot` wont be called as it is no longer connected.
|
||||
o:emit_signal "my_signal"
|
||||
|
|
|
@ -9,30 +9,30 @@ parent:add(l)
|
|||
|
||||
for _, v in ipairs {"", "#00ff00", "#0000ff"} do
|
||||
l:add(wibox.widget {
|
||||
{
|
||||
text = v~="" and v or "nil",
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = v~="" and v or nil,
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
})
|
||||
{
|
||||
text = v~="" and v or "nil",
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = v~="" and v or nil,
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
})
|
||||
end
|
||||
|
||||
return nil, 60
|
||||
|
|
|
@ -11,38 +11,38 @@ parent:add(l)
|
|||
|
||||
for _, v in ipairs {0,1,3,6.5} do
|
||||
l:add(wibox.widget {
|
||||
{
|
||||
{
|
||||
{
|
||||
text = v,
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
bg= "#ff000044",
|
||||
widget = wibox.container.background,
|
||||
},
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = "#00ff0033",
|
||||
border_width = v,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
},
|
||||
{
|
||||
{
|
||||
{
|
||||
text = v,
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
bg= "#ff000044",
|
||||
widget = wibox.container.background,
|
||||
},
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = "#00ff0033",
|
||||
border_width = v,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
},
|
||||
bg = cols[_],
|
||||
widget = wibox.container.background
|
||||
})
|
||||
})
|
||||
end
|
||||
|
||||
return nil, 60
|
||||
|
|
|
@ -9,71 +9,71 @@ parent:add(l)
|
|||
|
||||
for _, v in ipairs {0, 2, 4} do
|
||||
l:add(wibox.widget {
|
||||
{
|
||||
{
|
||||
text = v,
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
bg= beautiful.bg_normal,
|
||||
widget = wibox.container.background,
|
||||
},
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = "#ff000033",
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
paddings = v,
|
||||
widget = wibox.container.arcchart
|
||||
})
|
||||
{
|
||||
{
|
||||
text = v,
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
bg= beautiful.bg_normal,
|
||||
widget = wibox.container.background,
|
||||
},
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = "#ff000033",
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
paddings = v,
|
||||
widget = wibox.container.arcchart
|
||||
})
|
||||
end
|
||||
|
||||
l:add(wibox.widget {
|
||||
{
|
||||
{
|
||||
text = 6,
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
bg= beautiful.bg_normal,
|
||||
widget = wibox.container.background,
|
||||
},
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = "#ff000033",
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
paddings = {
|
||||
left = 6,
|
||||
right = 6,
|
||||
top = 6,
|
||||
bottom = 6,
|
||||
},
|
||||
widget = wibox.container.arcchart
|
||||
})
|
||||
{
|
||||
{
|
||||
text = 6,
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
bg= beautiful.bg_normal,
|
||||
widget = wibox.container.background,
|
||||
},
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = "#ff000033",
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
paddings = {
|
||||
left = 6,
|
||||
right = 6,
|
||||
top = 6,
|
||||
bottom = 6,
|
||||
},
|
||||
widget = wibox.container.arcchart
|
||||
})
|
||||
|
||||
return nil, 60
|
||||
|
|
|
@ -4,78 +4,78 @@ local wibox = require( "wibox" )
|
|||
local beautiful = require( "beautiful" )
|
||||
|
||||
parent:add(wibox.widget {
|
||||
{
|
||||
{
|
||||
markup = "<b>rounded_edge</b> = <i>false</i>",
|
||||
widget = wibox.widget.textbox
|
||||
},
|
||||
{
|
||||
{
|
||||
{
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = "#ff000033",
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
},
|
||||
margins = 2,
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
layout = wibox.container.margin
|
||||
},
|
||||
margins = 1,
|
||||
color = beautiful.border_color,
|
||||
layout = wibox.container.margin,
|
||||
},
|
||||
layout = wibox.layout.fixed.vertical
|
||||
},
|
||||
{
|
||||
{
|
||||
markup = "<b>rounded_edge</b> = <i>true</i>",
|
||||
widget = wibox.widget.textbox
|
||||
},
|
||||
{
|
||||
{
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = true,
|
||||
bg = "#ff000033",
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
},
|
||||
margins = 1,
|
||||
color = beautiful.border_color,
|
||||
layout = wibox.container.margin,
|
||||
},
|
||||
layout = wibox.layout.fixed.vertical
|
||||
},
|
||||
layout = wibox.layout.flex.horizontal
|
||||
})
|
||||
{
|
||||
{
|
||||
markup = "<b>rounded_edge</b> = <i>false</i>",
|
||||
widget = wibox.widget.textbox
|
||||
},
|
||||
{
|
||||
{
|
||||
{
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = "#ff000033",
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
},
|
||||
margins = 2,
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
layout = wibox.container.margin
|
||||
},
|
||||
margins = 1,
|
||||
color = beautiful.border_color,
|
||||
layout = wibox.container.margin,
|
||||
},
|
||||
layout = wibox.layout.fixed.vertical
|
||||
},
|
||||
{
|
||||
{
|
||||
markup = "<b>rounded_edge</b> = <i>true</i>",
|
||||
widget = wibox.widget.textbox
|
||||
},
|
||||
{
|
||||
{
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = true,
|
||||
bg = "#ff000033",
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
},
|
||||
margins = 1,
|
||||
color = beautiful.border_color,
|
||||
layout = wibox.container.margin,
|
||||
},
|
||||
layout = wibox.layout.fixed.vertical
|
||||
},
|
||||
layout = wibox.layout.flex.horizontal
|
||||
})
|
||||
|
||||
return 500, 60
|
||||
|
|
|
@ -9,27 +9,27 @@ parent:add(l)
|
|||
|
||||
for _, v in ipairs {0, math.pi/2, math.pi} do
|
||||
l:add(wibox.widget {
|
||||
{
|
||||
text = v,
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
value = 1,
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = "#ff000033",
|
||||
start_angle = v,
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
})
|
||||
{
|
||||
text = v,
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
value = 1,
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = "#ff000033",
|
||||
start_angle = v,
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
})
|
||||
end
|
||||
|
||||
return nil, 60
|
||||
|
|
|
@ -9,31 +9,31 @@ parent:add(l)
|
|||
|
||||
for _, v in ipairs {1,3,7,10} do
|
||||
l:add(wibox.widget {
|
||||
{
|
||||
text = v,
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
thickness = v,
|
||||
bg = "#ff000033",
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
})
|
||||
{
|
||||
text = v,
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
values = {
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
},
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
thickness = v,
|
||||
bg = "#ff000033",
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
})
|
||||
end
|
||||
|
||||
return nil, 60
|
||||
|
|
|
@ -9,20 +9,20 @@ parent:add(l)
|
|||
|
||||
for _, v in ipairs {0,1,7,99} do
|
||||
l:add(wibox.widget {
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
value = v,
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = "#ff000033",
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
})
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
value = v,
|
||||
max_value = 10,
|
||||
min_value = 0,
|
||||
rounded_edge = false,
|
||||
bg = "#ff000033",
|
||||
border_width = 0.5,
|
||||
border_color = "#000000",
|
||||
widget = wibox.container.arcchart
|
||||
})
|
||||
end
|
||||
|
||||
return nil, 60
|
||||
|
|
|
@ -35,9 +35,9 @@ local container = wibox.widget {
|
|||
shape_border_width = beautiful.border_width,
|
||||
widget = wibox.container.background,
|
||||
shape = shape.transform(shape.arrow)
|
||||
: rotate_at(15,15,math.pi/2)
|
||||
: translate(0,-8)
|
||||
: scale(0.9, 0.9),
|
||||
: rotate_at(15,15,math.pi/2)
|
||||
: translate(0,-8)
|
||||
: scale(0.9, 0.9),
|
||||
},
|
||||
strategy = 'exact',
|
||||
width = 42,
|
||||
|
|
|
@ -4,12 +4,12 @@ local assets = require( "xresources.assets" ) --DOC_HIDE
|
|||
|
||||
parent:add( --DOC_HIDE
|
||||
|
||||
wibox.widget {
|
||||
fit = function() return 128, 128 end,
|
||||
draw = function(_, _, cr)
|
||||
assets.gen_logo(cr, 128, 128, nil, "#535d6c")
|
||||
end,
|
||||
widget = wibox.widget.base.make_widget
|
||||
}
|
||||
wibox.widget {
|
||||
fit = function() return 128, 128 end,
|
||||
draw = function(_, _, cr)
|
||||
assets.gen_logo(cr, 128, 128, nil, "#535d6c")
|
||||
end,
|
||||
widget = wibox.widget.base.make_widget
|
||||
}
|
||||
|
||||
) --DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -4,14 +4,14 @@ local assets = require( "xresources.assets" ) --DOC_HIDE
|
|||
|
||||
parent:add( --DOC_HIDE
|
||||
|
||||
wibox.widget {
|
||||
fit = function() return 148, 128 end,
|
||||
draw = function(_, _, cr)
|
||||
assets.gen_logo(cr, 128, 128, nil, "#535d6c")
|
||||
cr:translate(128 + 128/16, 0)
|
||||
assets.gen_awesome_name(cr, 158, nil, "#535d6c", nil)
|
||||
end,
|
||||
widget = wibox.widget.base.make_widget
|
||||
}
|
||||
wibox.widget {
|
||||
fit = function() return 148, 128 end,
|
||||
draw = function(_, _, cr)
|
||||
assets.gen_logo(cr, 128, 128, nil, "#535d6c")
|
||||
cr:translate(128 + 128/16, 0)
|
||||
assets.gen_awesome_name(cr, 158, nil, "#535d6c", nil)
|
||||
end,
|
||||
widget = wibox.widget.base.make_widget
|
||||
}
|
||||
|
||||
) --DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -3,18 +3,18 @@ local wibox = require( "wibox" ) --DOC_HIDE
|
|||
local beautiful = require( "beautiful" ) --DOC_HIDE
|
||||
|
||||
parent:add( --DOC_HIDE
|
||||
wibox.widget {
|
||||
checked = true,
|
||||
color = beautiful.bg_normal,
|
||||
bg = "#ff00ff",
|
||||
border_width = 3,
|
||||
paddings = 4,
|
||||
border_color = "#0000ff",
|
||||
check_color = "#ff0000",
|
||||
forced_width = 20, --DOC_HIDE
|
||||
forced_height = 20, --DOC_HIDE
|
||||
check_border_color = "#ffff00",
|
||||
check_border_width = 1,
|
||||
widget = wibox.widget.checkbox
|
||||
}
|
||||
) --DOC_HIDE
|
||||
wibox.widget {
|
||||
checked = true,
|
||||
color = beautiful.bg_normal,
|
||||
bg = "#ff00ff",
|
||||
border_width = 3,
|
||||
paddings = 4,
|
||||
border_color = "#0000ff",
|
||||
check_color = "#ff0000",
|
||||
forced_width = 20, --DOC_HIDE
|
||||
forced_height = 20, --DOC_HIDE
|
||||
check_border_color = "#ffff00",
|
||||
check_border_width = 1,
|
||||
widget = wibox.widget.checkbox
|
||||
}
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -10,17 +10,17 @@ local l = wibox.widget { --DOC_HIDE
|
|||
|
||||
for _, s in ipairs {"rectangle", "circle", "losange", "octogon"} do
|
||||
|
||||
l:add( --DOC_HIDE
|
||||
wibox.widget {
|
||||
checked = true,
|
||||
color = beautiful.bg_normal,
|
||||
paddings = 2,
|
||||
forced_width = 20, --DOC_HIDE
|
||||
forced_height = 20, --DOC_HIDE
|
||||
check_shape = gears.shape[s],
|
||||
widget = wibox.widget.checkbox
|
||||
}
|
||||
) --DOC_HIDE
|
||||
l:add( --DOC_HIDE
|
||||
wibox.widget {
|
||||
checked = true,
|
||||
color = beautiful.bg_normal,
|
||||
paddings = 2,
|
||||
forced_width = 20, --DOC_HIDE
|
||||
forced_height = 20, --DOC_HIDE
|
||||
check_shape = gears.shape[s],
|
||||
widget = wibox.widget.checkbox
|
||||
}
|
||||
) --DOC_HIDE
|
||||
|
||||
end
|
||||
|
||||
|
|
|
@ -3,31 +3,31 @@ local wibox = require( "wibox" ) --DOC_HIDE
|
|||
local beautiful = require( "beautiful" ) --DOC_HIDE
|
||||
|
||||
parent:add( --DOC_HIDE
|
||||
wibox.widget {
|
||||
checked = true,
|
||||
color = beautiful.bg_normal,
|
||||
paddings = 2,
|
||||
forced_width = 20, --DOC_HIDE
|
||||
forced_height = 20, --DOC_HIDE
|
||||
check_shape = function(cr, width, height)
|
||||
local rs = math.min(width, height)
|
||||
wibox.widget {
|
||||
checked = true,
|
||||
color = beautiful.bg_normal,
|
||||
paddings = 2,
|
||||
forced_width = 20, --DOC_HIDE
|
||||
forced_height = 20, --DOC_HIDE
|
||||
check_shape = function(cr, width, height)
|
||||
local rs = math.min(width, height)
|
||||
|
||||
cr:move_to( 0 , 0 )
|
||||
cr:line_to( rs , 0 )
|
||||
cr:move_to( 0 , 0 )
|
||||
cr:line_to( 0 , rs )
|
||||
cr:move_to( 0 , rs )
|
||||
cr:line_to( rs , rs )
|
||||
cr:move_to( rs , 0 )
|
||||
cr:line_to( rs , rs )
|
||||
cr:move_to( 0 , 0 )
|
||||
cr:line_to( rs , rs )
|
||||
cr:move_to( 0 , rs )
|
||||
cr:line_to( rs , 0 )
|
||||
end,
|
||||
check_border_color = "#ff0000",
|
||||
check_color = "#00000000",
|
||||
check_border_width = 1,
|
||||
widget = wibox.widget.checkbox
|
||||
}
|
||||
) --DOC_HIDE
|
||||
cr:move_to( 0 , 0 )
|
||||
cr:line_to( rs , 0 )
|
||||
cr:move_to( 0 , 0 )
|
||||
cr:line_to( 0 , rs )
|
||||
cr:move_to( 0 , rs )
|
||||
cr:line_to( rs , rs )
|
||||
cr:move_to( rs , 0 )
|
||||
cr:line_to( rs , rs )
|
||||
cr:move_to( 0 , 0 )
|
||||
cr:line_to( rs , rs )
|
||||
cr:move_to( 0 , rs )
|
||||
cr:line_to( rs , 0 )
|
||||
end,
|
||||
check_border_color = "#ff0000",
|
||||
check_color = "#00000000",
|
||||
check_border_width = 1,
|
||||
widget = wibox.widget.checkbox
|
||||
}
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -10,17 +10,17 @@ local l = wibox.widget { --DOC_HIDE
|
|||
|
||||
for _, s in ipairs {"rectangle", "circle", "losange", "octogon"} do
|
||||
|
||||
l:add( --DOC_HIDE
|
||||
wibox.widget {
|
||||
checked = true,
|
||||
color = beautiful.bg_normal,
|
||||
paddings = 2,
|
||||
forced_width = 20, --DOC_HIDE
|
||||
forced_height = 20, --DOC_HIDE
|
||||
shape = gears.shape[s],
|
||||
widget = wibox.widget.checkbox
|
||||
}
|
||||
) --DOC_HIDE
|
||||
l:add( --DOC_HIDE
|
||||
wibox.widget {
|
||||
checked = true,
|
||||
color = beautiful.bg_normal,
|
||||
paddings = 2,
|
||||
forced_width = 20, --DOC_HIDE
|
||||
forced_height = 20, --DOC_HIDE
|
||||
shape = gears.shape[s],
|
||||
widget = wibox.widget.checkbox
|
||||
}
|
||||
) --DOC_HIDE
|
||||
|
||||
end
|
||||
|
||||
|
|
|
@ -4,28 +4,28 @@ local beautiful = require( "beautiful" ) --DOC_HIDE
|
|||
local gears = {shape = require("gears.shape")} --DOC_HIDE
|
||||
|
||||
parent:add( --DOC_HIDE
|
||||
wibox.widget { --DOC_HIDE
|
||||
wibox.widget {
|
||||
checked = true,
|
||||
color = beautiful.bg_normal,
|
||||
paddings = 2,
|
||||
forced_width = 20, --DOC_HIDE
|
||||
forced_height = 20, --DOC_HIDE
|
||||
shape = gears.shape.circle,
|
||||
widget = wibox.widget.checkbox
|
||||
}
|
||||
, --DOC_HIDE
|
||||
wibox.widget { --DOC_HIDE
|
||||
checked = false, --DOC_HIDE
|
||||
color = beautiful.bg_normal, --DOC_HIDE
|
||||
paddings = 2, --DOC_HIDE
|
||||
forced_width = 20, --DOC_HIDE
|
||||
forced_height = 20, --DOC_HIDE
|
||||
shape = gears.shape.circle, --DOC_HIDE
|
||||
widget = wibox.widget.checkbox --DOC_HIDE
|
||||
}, --DOC_HIDE
|
||||
spacing = 4, --DOC_HIDE
|
||||
layout = wibox.layout.fixed.horizontal --DOC_HIDE
|
||||
} --DOC_HIDE
|
||||
wibox.widget { --DOC_HIDE
|
||||
wibox.widget {
|
||||
checked = true,
|
||||
color = beautiful.bg_normal,
|
||||
paddings = 2,
|
||||
forced_width = 20, --DOC_HIDE
|
||||
forced_height = 20, --DOC_HIDE
|
||||
shape = gears.shape.circle,
|
||||
widget = wibox.widget.checkbox
|
||||
}
|
||||
, --DOC_HIDE
|
||||
wibox.widget { --DOC_HIDE
|
||||
checked = false, --DOC_HIDE
|
||||
color = beautiful.bg_normal, --DOC_HIDE
|
||||
paddings = 2, --DOC_HIDE
|
||||
forced_width = 20, --DOC_HIDE
|
||||
forced_height = 20, --DOC_HIDE
|
||||
shape = gears.shape.circle, --DOC_HIDE
|
||||
widget = wibox.widget.checkbox --DOC_HIDE
|
||||
}, --DOC_HIDE
|
||||
spacing = 4, --DOC_HIDE
|
||||
layout = wibox.layout.fixed.horizontal --DOC_HIDE
|
||||
} --DOC_HIDE
|
||||
|
||||
) --DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -4,10 +4,10 @@ local beautiful = require( "beautiful" ) --DOC_HIDE
|
|||
|
||||
parent:add( --DOC_HIDE
|
||||
|
||||
wibox.widget {
|
||||
image = beautiful.awesome_icon,
|
||||
resize = false,
|
||||
widget = wibox.widget.imagebox
|
||||
}
|
||||
wibox.widget {
|
||||
image = beautiful.awesome_icon,
|
||||
resize = false,
|
||||
widget = wibox.widget.imagebox
|
||||
}
|
||||
|
||||
) --DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -4,21 +4,21 @@ local beautiful = require( "beautiful" ) --DOC_HIDE
|
|||
|
||||
parent:add( --DOC_HIDE
|
||||
|
||||
wibox.widget {
|
||||
data_list = {
|
||||
{ 'L1', 100 },
|
||||
{ 'L2', 200 },
|
||||
{ 'L3', 300 },
|
||||
},
|
||||
border_width = 1,
|
||||
forced_height = 50, --DOC_HIDE
|
||||
forced_width = 100, --DOC_HIDE
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
widget = wibox.widget.piechart
|
||||
}
|
||||
wibox.widget {
|
||||
data_list = {
|
||||
{ 'L1', 100 },
|
||||
{ 'L2', 200 },
|
||||
{ 'L3', 300 },
|
||||
},
|
||||
border_width = 1,
|
||||
forced_height = 50, --DOC_HIDE
|
||||
forced_width = 100, --DOC_HIDE
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
widget = wibox.widget.piechart
|
||||
}
|
||||
|
||||
) --DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -5,15 +5,15 @@ local beautiful = require("beautiful") --DOC_HIDE
|
|||
|
||||
parent:add( --DOC_HIDE
|
||||
|
||||
wibox.widget {
|
||||
max_value = 1,
|
||||
value = 0.33,
|
||||
forced_height = 20,
|
||||
forced_width = 100,
|
||||
shape = gears.shape.rounded_bar,
|
||||
border_width = 2,
|
||||
border_color = beautiful.border_color,
|
||||
widget = wibox.widget.progressbar,
|
||||
}
|
||||
wibox.widget {
|
||||
max_value = 1,
|
||||
value = 0.33,
|
||||
forced_height = 20,
|
||||
forced_width = 100,
|
||||
shape = gears.shape.rounded_bar,
|
||||
border_width = 2,
|
||||
border_color = beautiful.border_color,
|
||||
widget = wibox.widget.progressbar,
|
||||
}
|
||||
|
||||
) --DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -5,18 +5,18 @@ local gears = {shape=require("gears.shape") } --DOC_HIDE
|
|||
|
||||
parent:add( --DOC_HIDE
|
||||
|
||||
wibox.widget {
|
||||
bar_shape = gears.shape.rounded_rect,
|
||||
bar_height = 3,
|
||||
bar_color = beautiful.border_color,
|
||||
handle_color = beautiful.bg_normal,
|
||||
handle_shape = gears.shape.circle,
|
||||
handle_border_color = beautiful.border_color,
|
||||
handle_border_width = 1,
|
||||
value = 25,
|
||||
widget = wibox.widget.slider,
|
||||
forced_height = 50, --DOC_HIDE
|
||||
forced_width = 100, --DOC_HIDE
|
||||
}
|
||||
wibox.widget {
|
||||
bar_shape = gears.shape.rounded_rect,
|
||||
bar_height = 3,
|
||||
bar_color = beautiful.border_color,
|
||||
handle_color = beautiful.bg_normal,
|
||||
handle_shape = gears.shape.circle,
|
||||
handle_border_color = beautiful.border_color,
|
||||
handle_border_width = 1,
|
||||
value = 25,
|
||||
widget = wibox.widget.slider,
|
||||
forced_height = 50, --DOC_HIDE
|
||||
forced_width = 100, --DOC_HIDE
|
||||
}
|
||||
|
||||
) --DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -3,11 +3,11 @@ local wibox = require("wibox") --DOC_HIDE
|
|||
|
||||
parent:add( --DOC_HIDE
|
||||
|
||||
wibox.widget{
|
||||
markup = "This <i>is</i> a <b>textbox</b>!!!",
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox
|
||||
}
|
||||
wibox.widget{
|
||||
markup = "This <i>is</i> a <b>textbox</b>!!!",
|
||||
align = "center",
|
||||
valign = "center",
|
||||
widget = wibox.widget.textbox
|
||||
}
|
||||
|
||||
) --DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -8,20 +8,20 @@ parent:add(l)
|
|||
|
||||
for _, v in ipairs {"#ff0000", "#00ff00", "#0000ff"} do
|
||||
l:add(wibox.widget {
|
||||
data_list = {
|
||||
{ 'L1', 100 },
|
||||
{ 'L2', 200 },
|
||||
{ 'L3', 300 },
|
||||
},
|
||||
border_width = 1,
|
||||
border_color = v,
|
||||
forced_height = 50,
|
||||
forced_width = 100,
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
widget = wibox.widget.piechart
|
||||
})
|
||||
data_list = {
|
||||
{ 'L1', 100 },
|
||||
{ 'L2', 200 },
|
||||
{ 'L3', 300 },
|
||||
},
|
||||
border_width = 1,
|
||||
border_color = v,
|
||||
forced_height = 50,
|
||||
forced_width = 100,
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
widget = wibox.widget.piechart
|
||||
})
|
||||
end
|
||||
|
|
|
@ -8,19 +8,19 @@ parent:add(l)
|
|||
|
||||
for _, v in ipairs {0,1,3,5} do
|
||||
l:add(wibox.widget {
|
||||
data_list = {
|
||||
{ 'L1', 100 },
|
||||
{ 'L2', 200 },
|
||||
{ 'L3', 300 },
|
||||
},
|
||||
border_width = v,
|
||||
forced_height = 50,
|
||||
forced_width = 100,
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
widget = wibox.widget.piechart
|
||||
})
|
||||
data_list = {
|
||||
{ 'L1', 100 },
|
||||
{ 'L2', 200 },
|
||||
{ 'L3', 300 },
|
||||
},
|
||||
border_width = v,
|
||||
forced_height = 50,
|
||||
forced_width = 100,
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
widget = wibox.widget.piechart
|
||||
})
|
||||
end
|
||||
|
|
|
@ -4,65 +4,65 @@ local wibox = require( "wibox" )
|
|||
local beautiful = require( "beautiful" )
|
||||
|
||||
parent:add(wibox.widget {
|
||||
{
|
||||
{
|
||||
markup = "<b>display_labels</b> = <i>false</i>",
|
||||
widget = wibox.widget.textbox
|
||||
},
|
||||
{
|
||||
{
|
||||
data_list = {
|
||||
{ 'L1', 100 },
|
||||
{ 'L2', 200 },
|
||||
{ 'L3', 300 },
|
||||
},
|
||||
border_width = 1,
|
||||
forced_height = 50,
|
||||
forced_width = 100,
|
||||
display_labels = false,
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
widget = wibox.widget.piechart
|
||||
},
|
||||
margins = 1,
|
||||
color = beautiful.border_color,
|
||||
layout = wibox.container.margin,
|
||||
},
|
||||
layout = wibox.layout.fixed.vertical
|
||||
},
|
||||
{
|
||||
{
|
||||
markup = "<b>display_labels</b> = <i>true</i>",
|
||||
widget = wibox.widget.textbox
|
||||
},
|
||||
{
|
||||
{
|
||||
data_list = {
|
||||
{ 'L1', 100 },
|
||||
{ 'L2', 200 },
|
||||
{ 'L3', 300 },
|
||||
},
|
||||
border_width = 1,
|
||||
forced_height = 50,
|
||||
forced_width = 100,
|
||||
display_labels = true,
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
widget = wibox.widget.piechart
|
||||
},
|
||||
margins = 1,
|
||||
color = beautiful.border_color,
|
||||
layout = wibox.container.margin,
|
||||
},
|
||||
layout = wibox.layout.fixed.vertical
|
||||
},
|
||||
layout = wibox.layout.flex.horizontal
|
||||
})
|
||||
{
|
||||
{
|
||||
markup = "<b>display_labels</b> = <i>false</i>",
|
||||
widget = wibox.widget.textbox
|
||||
},
|
||||
{
|
||||
{
|
||||
data_list = {
|
||||
{ 'L1', 100 },
|
||||
{ 'L2', 200 },
|
||||
{ 'L3', 300 },
|
||||
},
|
||||
border_width = 1,
|
||||
forced_height = 50,
|
||||
forced_width = 100,
|
||||
display_labels = false,
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
widget = wibox.widget.piechart
|
||||
},
|
||||
margins = 1,
|
||||
color = beautiful.border_color,
|
||||
layout = wibox.container.margin,
|
||||
},
|
||||
layout = wibox.layout.fixed.vertical
|
||||
},
|
||||
{
|
||||
{
|
||||
markup = "<b>display_labels</b> = <i>true</i>",
|
||||
widget = wibox.widget.textbox
|
||||
},
|
||||
{
|
||||
{
|
||||
data_list = {
|
||||
{ 'L1', 100 },
|
||||
{ 'L2', 200 },
|
||||
{ 'L3', 300 },
|
||||
},
|
||||
border_width = 1,
|
||||
forced_height = 50,
|
||||
forced_width = 100,
|
||||
display_labels = true,
|
||||
colors = {
|
||||
beautiful.bg_normal,
|
||||
beautiful.bg_highlight,
|
||||
beautiful.border_color,
|
||||
},
|
||||
widget = wibox.widget.piechart
|
||||
},
|
||||
margins = 1,
|
||||
color = beautiful.border_color,
|
||||
layout = wibox.container.margin,
|
||||
},
|
||||
layout = wibox.layout.fixed.vertical
|
||||
},
|
||||
layout = wibox.layout.flex.horizontal
|
||||
})
|
||||
|
||||
return 500, 60
|
||||
|
|
|
@ -12,16 +12,16 @@ local l = wibox.layout { --DOC_HIDE
|
|||
|
||||
for _, shape in ipairs {"rounded_bar", "octogon", "hexagon", "powerline" } do
|
||||
l:add(wibox.widget {
|
||||
value = 0.33,
|
||||
bar_shape = gears.shape[shape],
|
||||
bar_border_color = beautiful.border_color,
|
||||
bar_border_width = 1,
|
||||
border_width = 2,
|
||||
border_color = beautiful.border_color,
|
||||
margins = 5, --DOC_HIDE
|
||||
paddings = 1,
|
||||
widget = wibox.widget.progressbar,
|
||||
})
|
||||
value = 0.33,
|
||||
bar_shape = gears.shape[shape],
|
||||
bar_border_color = beautiful.border_color,
|
||||
bar_border_width = 1,
|
||||
border_width = 2,
|
||||
border_color = beautiful.border_color,
|
||||
margins = 5, --DOC_HIDE
|
||||
paddings = 1,
|
||||
widget = wibox.widget.progressbar,
|
||||
})
|
||||
end
|
||||
|
||||
parent:add(l) --DOC_HIDE
|
||||
|
|
|
@ -5,23 +5,23 @@ local beautiful = require("beautiful") --DOC_HIDE
|
|||
|
||||
parent:add( --DOC_HIDE
|
||||
|
||||
wibox.widget {
|
||||
value = 75,
|
||||
max_value = 100,
|
||||
border_width = 2,
|
||||
border_color = beautiful.border_color,
|
||||
color = beautiful.border_color,
|
||||
shape = gears.shape.rounded_bar,
|
||||
bar_shape = gears.shape.rounded_bar,
|
||||
clip = false,
|
||||
forced_height = 30,
|
||||
forced_width = 100,
|
||||
paddings = 5,
|
||||
margins = {
|
||||
top = 12,
|
||||
bottom = 12,
|
||||
},
|
||||
widget = wibox.widget.progressbar,
|
||||
}
|
||||
wibox.widget {
|
||||
value = 75,
|
||||
max_value = 100,
|
||||
border_width = 2,
|
||||
border_color = beautiful.border_color,
|
||||
color = beautiful.border_color,
|
||||
shape = gears.shape.rounded_bar,
|
||||
bar_shape = gears.shape.rounded_bar,
|
||||
clip = false,
|
||||
forced_height = 30,
|
||||
forced_width = 100,
|
||||
paddings = 5,
|
||||
margins = {
|
||||
top = 12,
|
||||
bottom = 12,
|
||||
},
|
||||
widget = wibox.widget.progressbar,
|
||||
}
|
||||
|
||||
) --DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -12,13 +12,13 @@ local l = wibox.layout { --DOC_HIDE
|
|||
|
||||
for _, shape in ipairs {"rounded_bar", "octogon", "hexagon", "powerline" } do
|
||||
l:add(wibox.widget {
|
||||
value = 0.33,
|
||||
shape = gears.shape[shape],
|
||||
border_width = 2,
|
||||
border_color = beautiful.border_color,
|
||||
margins = 5, --DOC_HIDE
|
||||
widget = wibox.widget.progressbar,
|
||||
})
|
||||
value = 0.33,
|
||||
shape = gears.shape[shape],
|
||||
border_width = 2,
|
||||
border_color = beautiful.border_color,
|
||||
margins = 5, --DOC_HIDE
|
||||
widget = wibox.widget.progressbar,
|
||||
})
|
||||
end
|
||||
|
||||
parent:add(l) --DOC_HIDE
|
||||
|
|
|
@ -4,22 +4,22 @@ local beautiful = require("beautiful") --DOC_HIDE
|
|||
|
||||
parent:add( --DOC_HIDE
|
||||
|
||||
wibox.widget {
|
||||
{
|
||||
max_value = 1,
|
||||
value = 0.5,
|
||||
forced_height = 20,
|
||||
forced_width = 100,
|
||||
paddings = 1,
|
||||
border_width = 1,
|
||||
border_color = beautiful.border_color,
|
||||
widget = wibox.widget.progressbar,
|
||||
},
|
||||
{
|
||||
text = "50%",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
layout = wibox.layout.stack
|
||||
}
|
||||
wibox.widget {
|
||||
{
|
||||
max_value = 1,
|
||||
value = 0.5,
|
||||
forced_height = 20,
|
||||
forced_width = 100,
|
||||
paddings = 1,
|
||||
border_width = 1,
|
||||
border_color = beautiful.border_color,
|
||||
widget = wibox.widget.progressbar,
|
||||
},
|
||||
{
|
||||
text = "50%",
|
||||
widget = wibox.widget.textbox,
|
||||
},
|
||||
layout = wibox.layout.stack
|
||||
}
|
||||
|
||||
) --DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -3,16 +3,16 @@ local wibox = require("wibox") --DOC_HIDE
|
|||
|
||||
parent:add( --DOC_HIDE
|
||||
|
||||
wibox.widget {
|
||||
{
|
||||
max_value = 1,
|
||||
value = 0.33,
|
||||
widget = wibox.widget.progressbar,
|
||||
},
|
||||
forced_height = 100,
|
||||
forced_width = 20,
|
||||
direction = "east",
|
||||
layout = wibox.container.rotate,
|
||||
}
|
||||
wibox.widget {
|
||||
{
|
||||
max_value = 1,
|
||||
value = 0.33,
|
||||
widget = wibox.widget.progressbar,
|
||||
},
|
||||
forced_height = 100,
|
||||
forced_width = 20,
|
||||
direction = "east",
|
||||
layout = wibox.container.rotate,
|
||||
}
|
||||
|
||||
) --DOC_HIDE
|
||||
) --DOC_HIDE
|
||||
|
|
|
@ -17,11 +17,11 @@ end
|
|||
|
||||
local l = wibox.layout {
|
||||
gen(0), gen(3), gen(6), gen({
|
||||
top = 12,
|
||||
bottom = 12,
|
||||
left = 12,
|
||||
right = 12,
|
||||
}),
|
||||
top = 12,
|
||||
bottom = 12,
|
||||
left = 12,
|
||||
right = 12,
|
||||
}),
|
||||
forced_height = 30,
|
||||
forced_width = 400,
|
||||
spacing = 5,
|
||||
|
|
|
@ -17,11 +17,11 @@ end
|
|||
|
||||
local l = wibox.layout {
|
||||
gen(0), gen(3), gen(6), gen({
|
||||
top = 12,
|
||||
bottom = 12,
|
||||
left = 12,
|
||||
right = 12,
|
||||
}),
|
||||
top = 12,
|
||||
bottom = 12,
|
||||
left = 12,
|
||||
right = 12,
|
||||
}),
|
||||
forced_height = 30,
|
||||
forced_width = 400,
|
||||
spacing = 5,
|
||||
|
|
|
@ -26,203 +26,203 @@ end
|
|||
|
||||
local steps = {
|
||||
|
||||
function(count)
|
||||
if count <= 5 then
|
||||
awful.spawn("xterm")
|
||||
elseif #client.get() >= 5 then
|
||||
local c, _ = get_c_and_t()
|
||||
old_c = c
|
||||
function(count)
|
||||
if count <= 5 then
|
||||
awful.spawn("xterm")
|
||||
elseif #client.get() >= 5 then
|
||||
local c, _ = get_c_and_t()
|
||||
old_c = c
|
||||
|
||||
return true
|
||||
end
|
||||
end,
|
||||
|
||||
-- Wait for the focus to change
|
||||
function()
|
||||
assert(old_c)
|
||||
|
||||
-- Test layout
|
||||
-- local cb = get_callback({modkey}, " ")
|
||||
-- assert(cb)
|
||||
|
||||
--TODO use the key once the bug is fixed
|
||||
local l = old_c.screen.selected_tag.layout
|
||||
assert(l)
|
||||
|
||||
-- cb()
|
||||
awful.layout.inc(1)
|
||||
|
||||
assert(old_c.screen.selected_tag.layout ~= l)
|
||||
|
||||
-- Test ontop
|
||||
|
||||
assert(not old_c.ontop)
|
||||
get_callback({modkey}, "t")()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- Ok, no now ontop should be true
|
||||
function()
|
||||
local _, t = get_c_and_t()
|
||||
|
||||
-- Give awesome some time
|
||||
if not old_c.ontop then return nil end
|
||||
|
||||
assert(old_c.ontop)
|
||||
|
||||
-- Now, test the master_width_factor
|
||||
assert(t.master_width_factor == 0.5)
|
||||
|
||||
get_callback({modkey}, "l")()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- The master width factor should now be bigger
|
||||
function()
|
||||
local _, t = get_c_and_t()
|
||||
|
||||
assert(t.master_width_factor == 0.55)
|
||||
|
||||
-- Now, test the master_count
|
||||
assert(t.master_count == 1)
|
||||
|
||||
get_callback({modkey, "Shift"}, "h")()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- The number of master client should now be 2
|
||||
function()
|
||||
local _, t = get_c_and_t()
|
||||
|
||||
assert(t.master_count == 2)
|
||||
|
||||
-- Now, test the column_count
|
||||
assert(t.column_count == 1)
|
||||
|
||||
get_callback({modkey, "Control"}, "h")()
|
||||
get_callback({modkey, "Shift" }, "l")()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- The number of columns should now be 2
|
||||
function()
|
||||
local _, t = get_c_and_t()
|
||||
|
||||
assert(t.column_count == 2)
|
||||
|
||||
-- Now, test the switching tag
|
||||
assert(t.index == 1)
|
||||
|
||||
get_callback({modkey, }, "Right")()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- The tag index should now be 2
|
||||
function()
|
||||
local tags = mouse.screen.tags
|
||||
-- local t = awful.screen.focused().selected_tag
|
||||
|
||||
-- assert(t.index == 2)--FIXME
|
||||
|
||||
assert(tags[1].index == 1)
|
||||
tags[1]:view_only()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- Before testing tags, lets make sure everything is still right
|
||||
function()
|
||||
local tags = mouse.screen.tags
|
||||
|
||||
assert(tags[1].selected)
|
||||
|
||||
local clients = mouse.screen.clients
|
||||
|
||||
-- Make sure the clients are all on the same screen, they should be
|
||||
local c_scr = client.get()[1].screen
|
||||
|
||||
for _, c in ipairs(client.get()) do
|
||||
assert(c_scr == c.screen)
|
||||
end
|
||||
|
||||
-- Then this should be true
|
||||
assert(#clients == #client.get())
|
||||
|
||||
assert(#mouse.screen.all_clients == #clients)
|
||||
|
||||
assert(#mouse.screen.all_clients - #mouse.screen.hidden_clients == #clients)
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- Now, test switching tags
|
||||
function()
|
||||
local tags = mouse.screen.tags
|
||||
local clients = mouse.screen.all_clients
|
||||
|
||||
assert(#tags == 9)
|
||||
|
||||
assert(#clients == 5)
|
||||
|
||||
assert(mouse.screen.selected_tag == tags[1])
|
||||
|
||||
for i=1, 9 do
|
||||
-- Check that assertion, because if it's false, the other assert()
|
||||
-- wont make any sense.
|
||||
assert(tags[i].index == i)
|
||||
end
|
||||
|
||||
for i=1, 9 do
|
||||
tags[i]:view_only()
|
||||
assert(tags[i].selected)
|
||||
assert(#mouse.screen.selected_tags == 1)
|
||||
end
|
||||
|
||||
tags[1]:view_only()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- Lets shift some clients around
|
||||
function()
|
||||
local tags = mouse.screen.tags
|
||||
|
||||
-- Given all tags have been selected, the selection should be back on
|
||||
-- tags[1] and the client history should be kept
|
||||
assert(client.focus == old_c)
|
||||
|
||||
--get_callback({modkey, "Shift" }, "#"..(9+i))() --FIXME
|
||||
client.focus:move_to_tag(tags[2])
|
||||
|
||||
assert(not client.focus)
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- The client should be on tag 5
|
||||
function()
|
||||
-- Confirm the move did happen
|
||||
local tags = mouse.screen.tags
|
||||
assert(tags[1].selected)
|
||||
assert(#old_c:tags() == 1)
|
||||
assert(old_c:tags()[1] ~= tags[1])
|
||||
assert(not old_c:tags()[1].selected)
|
||||
|
||||
-- The focus should have changed by now, as the tag isn't visible
|
||||
assert(client.focus ~= old_c)
|
||||
|
||||
assert(old_c:tags()[1] == tags[2])
|
||||
|
||||
assert(#tags[2]:clients() == 1)
|
||||
assert(#tags[1]:clients() == 4)
|
||||
|
||||
return true
|
||||
end
|
||||
end,
|
||||
|
||||
-- Wait for the focus to change
|
||||
function()
|
||||
assert(old_c)
|
||||
|
||||
-- Test layout
|
||||
-- local cb = get_callback({modkey}, " ")
|
||||
-- assert(cb)
|
||||
|
||||
--TODO use the key once the bug is fixed
|
||||
local l = old_c.screen.selected_tag.layout
|
||||
assert(l)
|
||||
|
||||
-- cb()
|
||||
awful.layout.inc(1)
|
||||
|
||||
assert(old_c.screen.selected_tag.layout ~= l)
|
||||
|
||||
-- Test ontop
|
||||
|
||||
assert(not old_c.ontop)
|
||||
get_callback({modkey}, "t")()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- Ok, no now ontop should be true
|
||||
function()
|
||||
local _, t = get_c_and_t()
|
||||
|
||||
-- Give awesome some time
|
||||
if not old_c.ontop then return nil end
|
||||
|
||||
assert(old_c.ontop)
|
||||
|
||||
-- Now, test the master_width_factor
|
||||
assert(t.master_width_factor == 0.5)
|
||||
|
||||
get_callback({modkey}, "l")()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- The master width factor should now be bigger
|
||||
function()
|
||||
local _, t = get_c_and_t()
|
||||
|
||||
assert(t.master_width_factor == 0.55)
|
||||
|
||||
-- Now, test the master_count
|
||||
assert(t.master_count == 1)
|
||||
|
||||
get_callback({modkey, "Shift"}, "h")()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- The number of master client should now be 2
|
||||
function()
|
||||
local _, t = get_c_and_t()
|
||||
|
||||
assert(t.master_count == 2)
|
||||
|
||||
-- Now, test the column_count
|
||||
assert(t.column_count == 1)
|
||||
|
||||
get_callback({modkey, "Control"}, "h")()
|
||||
get_callback({modkey, "Shift" }, "l")()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- The number of columns should now be 2
|
||||
function()
|
||||
local _, t = get_c_and_t()
|
||||
|
||||
assert(t.column_count == 2)
|
||||
|
||||
-- Now, test the switching tag
|
||||
assert(t.index == 1)
|
||||
|
||||
get_callback({modkey, }, "Right")()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- The tag index should now be 2
|
||||
function()
|
||||
local tags = mouse.screen.tags
|
||||
-- local t = awful.screen.focused().selected_tag
|
||||
|
||||
-- assert(t.index == 2)--FIXME
|
||||
|
||||
assert(tags[1].index == 1)
|
||||
tags[1]:view_only()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- Before testing tags, lets make sure everything is still right
|
||||
function()
|
||||
local tags = mouse.screen.tags
|
||||
|
||||
assert(tags[1].selected)
|
||||
|
||||
local clients = mouse.screen.clients
|
||||
|
||||
-- Make sure the clients are all on the same screen, they should be
|
||||
local c_scr = client.get()[1].screen
|
||||
|
||||
for _, c in ipairs(client.get()) do
|
||||
assert(c_scr == c.screen)
|
||||
end
|
||||
|
||||
-- Then this should be true
|
||||
assert(#clients == #client.get())
|
||||
|
||||
assert(#mouse.screen.all_clients == #clients)
|
||||
|
||||
assert(#mouse.screen.all_clients - #mouse.screen.hidden_clients == #clients)
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- Now, test switching tags
|
||||
function()
|
||||
local tags = mouse.screen.tags
|
||||
local clients = mouse.screen.all_clients
|
||||
|
||||
assert(#tags == 9)
|
||||
|
||||
assert(#clients == 5)
|
||||
|
||||
assert(mouse.screen.selected_tag == tags[1])
|
||||
|
||||
for i=1, 9 do
|
||||
-- Check that assertion, because if it's false, the other assert()
|
||||
-- wont make any sense.
|
||||
assert(tags[i].index == i)
|
||||
end
|
||||
|
||||
for i=1, 9 do
|
||||
tags[i]:view_only()
|
||||
assert(tags[i].selected)
|
||||
assert(#mouse.screen.selected_tags == 1)
|
||||
end
|
||||
|
||||
tags[1]:view_only()
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- Lets shift some clients around
|
||||
function()
|
||||
local tags = mouse.screen.tags
|
||||
|
||||
-- Given all tags have been selected, the selection should be back on
|
||||
-- tags[1] and the client history should be kept
|
||||
assert(client.focus == old_c)
|
||||
|
||||
--get_callback({modkey, "Shift" }, "#"..(9+i))() --FIXME
|
||||
client.focus:move_to_tag(tags[2])
|
||||
|
||||
assert(not client.focus)
|
||||
|
||||
return true
|
||||
end,
|
||||
|
||||
-- The client should be on tag 5
|
||||
function()
|
||||
-- Confirm the move did happen
|
||||
local tags = mouse.screen.tags
|
||||
assert(tags[1].selected)
|
||||
assert(#old_c:tags() == 1)
|
||||
assert(old_c:tags()[1] ~= tags[1])
|
||||
assert(not old_c:tags()[1].selected)
|
||||
|
||||
-- The focus should have changed by now, as the tag isn't visible
|
||||
assert(client.focus ~= old_c)
|
||||
|
||||
assert(old_c:tags()[1] == tags[2])
|
||||
|
||||
assert(#tags[2]:clients() == 1)
|
||||
assert(#tags[1]:clients() == 4)
|
||||
|
||||
return true
|
||||
end
|
||||
}
|
||||
|
||||
require("_runner").run_steps(steps)
|
||||
|
|
|
@ -6,75 +6,75 @@ awful.util.deprecate = function() end
|
|||
local has_spawned = false
|
||||
local steps = {
|
||||
|
||||
function(count)
|
||||
function(count)
|
||||
|
||||
if count <= 1 and not has_spawned and #client.get() < 2 then
|
||||
awful.spawn("xterm")
|
||||
awful.spawn("xterm")
|
||||
has_spawned = true
|
||||
elseif #client.get() >= 2 then
|
||||
if count <= 1 and not has_spawned and #client.get() < 2 then
|
||||
awful.spawn("xterm")
|
||||
awful.spawn("xterm")
|
||||
has_spawned = true
|
||||
elseif #client.get() >= 2 then
|
||||
|
||||
-- Test properties
|
||||
client.focus = client.get()[1]
|
||||
local c = client.focus
|
||||
-- local c2 = client.get()[2]
|
||||
-- Test properties
|
||||
client.focus = client.get()[1]
|
||||
local c = client.focus
|
||||
-- local c2 = client.get()[2]
|
||||
|
||||
c.foo = "bar"
|
||||
c.foo = "bar"
|
||||
|
||||
-- Check if the property system works
|
||||
assert(c.foo == "bar")
|
||||
assert(c.foo == awful.client.property.get(c, "foo"))
|
||||
-- Check if the property system works
|
||||
assert(c.foo == "bar")
|
||||
assert(c.foo == awful.client.property.get(c, "foo"))
|
||||
|
||||
-- Test jumpto
|
||||
-- Test jumpto
|
||||
|
||||
--FIXME doesn't work
|
||||
-- c2:jump_to()
|
||||
-- assert(client.focus == c2)
|
||||
-- awful.client.jumpto(c)
|
||||
-- assert(client.focus == c)
|
||||
--FIXME doesn't work
|
||||
-- c2:jump_to()
|
||||
-- assert(client.focus == c2)
|
||||
-- awful.client.jumpto(c)
|
||||
-- assert(client.focus == c)
|
||||
|
||||
-- Test moveresize
|
||||
c.size_hints_honor = false
|
||||
c:geometry {x=0,y=0,width=50,height=50}
|
||||
c:relative_move( 100, 100, 50, 50 )
|
||||
for _,v in pairs(c:geometry()) do
|
||||
assert(v == 100)
|
||||
end
|
||||
awful.client.moveresize(-25, -25, -25, -25, c )
|
||||
for _,v in pairs(c:geometry()) do
|
||||
assert(v == 75)
|
||||
end
|
||||
-- Test moveresize
|
||||
c.size_hints_honor = false
|
||||
c:geometry {x=0,y=0,width=50,height=50}
|
||||
c:relative_move( 100, 100, 50, 50 )
|
||||
for _,v in pairs(c:geometry()) do
|
||||
assert(v == 100)
|
||||
end
|
||||
awful.client.moveresize(-25, -25, -25, -25, c )
|
||||
for _,v in pairs(c:geometry()) do
|
||||
assert(v == 75)
|
||||
end
|
||||
|
||||
-- Test movetotag
|
||||
-- Test movetotag
|
||||
|
||||
local t = mouse.screen.tags[1]
|
||||
local t2 = mouse.screen.tags[2]
|
||||
local t = mouse.screen.tags[1]
|
||||
local t2 = mouse.screen.tags[2]
|
||||
|
||||
c:tags{t}
|
||||
assert(c:tags()[1] == t)
|
||||
c:move_to_tag(t2)
|
||||
assert(c:tags()[1] == t2)
|
||||
awful.client.movetotag(t, c)
|
||||
assert(c:tags()[1] == t)
|
||||
c:tags{t}
|
||||
assert(c:tags()[1] == t)
|
||||
c:move_to_tag(t2)
|
||||
assert(c:tags()[1] == t2)
|
||||
awful.client.movetotag(t, c)
|
||||
assert(c:tags()[1] == t)
|
||||
|
||||
-- Test toggletag
|
||||
-- Test toggletag
|
||||
|
||||
c:tags{t}
|
||||
c:toggle_tag(t2)
|
||||
assert(c:tags()[1] == t2 or c:tags()[2] == t2)
|
||||
awful.client.toggletag(t2, c)
|
||||
assert(c:tags()[1] == t and c:tags()[1] ~= t2 and c:tags()[2] == nil)
|
||||
c:tags{t}
|
||||
c:toggle_tag(t2)
|
||||
assert(c:tags()[1] == t2 or c:tags()[2] == t2)
|
||||
awful.client.toggletag(t2, c)
|
||||
assert(c:tags()[1] == t and c:tags()[1] ~= t2 and c:tags()[2] == nil)
|
||||
|
||||
-- Test floating
|
||||
assert(c.floating ~= nil and type(c.floating) == "boolean")
|
||||
c.floating = true
|
||||
assert(awful.client.floating.get(c))
|
||||
awful.client.floating.set(c, false)
|
||||
assert(not c.floating)
|
||||
-- Test floating
|
||||
assert(c.floating ~= nil and type(c.floating) == "boolean")
|
||||
c.floating = true
|
||||
assert(awful.client.floating.get(c))
|
||||
awful.client.floating.set(c, false)
|
||||
assert(not c.floating)
|
||||
|
||||
return true
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
||||
end
|
||||
}
|
||||
|
||||
local original_count, c1, c2 = 0
|
||||
|
@ -108,21 +108,21 @@ table.insert(steps, function()
|
|||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
-- The request should have been denied
|
||||
assert(client.focus == c2)
|
||||
-- The request should have been denied
|
||||
assert(client.focus == c2)
|
||||
|
||||
-- Test the remove function
|
||||
awful.ewmh.remove_activate_filter(function() end)
|
||||
-- Test the remove function
|
||||
awful.ewmh.remove_activate_filter(function() end)
|
||||
|
||||
awful.ewmh.add_activate_filter(awful.ewmh.generic_activate_filters[1])
|
||||
awful.ewmh.add_activate_filter(awful.ewmh.generic_activate_filters[1])
|
||||
|
||||
awful.ewmh.remove_activate_filter(awful.ewmh.generic_activate_filters[1])
|
||||
awful.ewmh.remove_activate_filter(awful.ewmh.generic_activate_filters[1])
|
||||
|
||||
assert(original_count == #awful.ewmh.generic_activate_filters)
|
||||
assert(original_count == #awful.ewmh.generic_activate_filters)
|
||||
|
||||
c1:emit_signal("request::activate", "i_said_so")
|
||||
c1:emit_signal("request::activate", "i_said_so")
|
||||
|
||||
return client.focus == c1
|
||||
return client.focus == c1
|
||||
end)
|
||||
|
||||
local has_error
|
||||
|
@ -154,8 +154,8 @@ table.insert(multi_screen_steps, function()
|
|||
for i=1, screen.count() do
|
||||
local s = screen[i]
|
||||
test_client("screen"..i, nil, {
|
||||
screen = s,
|
||||
})
|
||||
screen = s,
|
||||
})
|
||||
end
|
||||
|
||||
return true
|
||||
|
@ -218,92 +218,92 @@ table.insert(multi_screen_steps, function()
|
|||
for i=1, screen.count() do
|
||||
local s = screen[i]
|
||||
test_client("screen"..i, nil, {
|
||||
new_tag = {
|
||||
name = "NEW_AT_"..i,
|
||||
screen = s,
|
||||
}
|
||||
new_tag = {
|
||||
name = "NEW_AT_"..i,
|
||||
screen = s,
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(multi_screen_steps, function()
|
||||
if #client.get() ~= screen.count() then return end
|
||||
|
||||
for _, c in ipairs(client.get()) do
|
||||
assert(#c:tags() == 1)
|
||||
assert(c.first_tag.name == "NEW_AT_"..c.screen.index)
|
||||
end
|
||||
|
||||
-- Kill the client
|
||||
for _, c in ipairs(client.get()) do
|
||||
c:kill()
|
||||
end
|
||||
|
||||
if screen.count() < 2 then return true end
|
||||
|
||||
-- Now, add client where the target tag and screen don't match
|
||||
test_client("test_tag1", nil, {
|
||||
tag = screen[2].tags[2],
|
||||
screen = screen[1],
|
||||
})
|
||||
end
|
||||
|
||||
return true
|
||||
end)
|
||||
-- Add a client with multiple tags on the same screen, but not c.screen
|
||||
test_client("test_tags1", nil, {
|
||||
tags = { screen[1].tags[3], screen[1].tags[4] },
|
||||
screen = screen[2],
|
||||
})
|
||||
|
||||
table.insert(multi_screen_steps, function()
|
||||
if #client.get() ~= screen.count() then return end
|
||||
-- Identical, but using the tag names
|
||||
test_client("test_tags2", nil, {
|
||||
tags = { "3", "4" },
|
||||
screen = screen[2],
|
||||
})
|
||||
|
||||
for _, c in ipairs(client.get()) do
|
||||
assert(#c:tags() == 1)
|
||||
assert(c.first_tag.name == "NEW_AT_"..c.screen.index)
|
||||
end
|
||||
-- Also test tags, but with an invalid screen array
|
||||
test_client("test_tags3", nil, {
|
||||
tags = { screen[2].tags[3], screen[1].tags[4] },
|
||||
screen = screen[1],
|
||||
})
|
||||
|
||||
-- Kill the client
|
||||
for _, c in ipairs(client.get()) do
|
||||
c:kill()
|
||||
end
|
||||
-- Another test for tags, but with no matching names
|
||||
test_client("test_tags4", nil, {
|
||||
tags = { "foobar", "bobcat" },
|
||||
screen = screen[1],
|
||||
})
|
||||
|
||||
if screen.count() < 2 then return true end
|
||||
|
||||
-- Now, add client where the target tag and screen don't match
|
||||
test_client("test_tag1", nil, {
|
||||
tag = screen[2].tags[2],
|
||||
screen = screen[1],
|
||||
})
|
||||
|
||||
-- Add a client with multiple tags on the same screen, but not c.screen
|
||||
test_client("test_tags1", nil, {
|
||||
tags = { screen[1].tags[3], screen[1].tags[4] },
|
||||
screen = screen[2],
|
||||
})
|
||||
|
||||
-- Identical, but using the tag names
|
||||
test_client("test_tags2", nil, {
|
||||
tags = { "3", "4" },
|
||||
screen = screen[2],
|
||||
})
|
||||
|
||||
-- Also test tags, but with an invalid screen array
|
||||
test_client("test_tags3", nil, {
|
||||
tags = { screen[2].tags[3], screen[1].tags[4] },
|
||||
screen = screen[1],
|
||||
})
|
||||
|
||||
-- Another test for tags, but with no matching names
|
||||
test_client("test_tags4", nil, {
|
||||
tags = { "foobar", "bobcat" },
|
||||
screen = screen[1],
|
||||
})
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
|
||||
table.insert(multi_screen_steps, function()
|
||||
if screen.count() < 2 then return true end
|
||||
if #client.get() ~= 5 then return end
|
||||
if screen.count() < 2 then return true end
|
||||
if #client.get() ~= 5 then return end
|
||||
|
||||
local c_by_class = {}
|
||||
local c_by_class = {}
|
||||
|
||||
for _, c in ipairs(client.get()) do
|
||||
c_by_class[c.class] = c
|
||||
end
|
||||
for _, c in ipairs(client.get()) do
|
||||
c_by_class[c.class] = c
|
||||
end
|
||||
|
||||
assert(c_by_class["test_tag1"].screen == screen[2])
|
||||
assert(#c_by_class["test_tag1"]:tags() == 1)
|
||||
assert(c_by_class["test_tag1"].screen == screen[2])
|
||||
assert(#c_by_class["test_tag1"]:tags() == 1)
|
||||
|
||||
assert(c_by_class["test_tags1"].screen == screen[1])
|
||||
assert(#c_by_class["test_tags1"]:tags() == 2)
|
||||
assert(c_by_class["test_tags1"].screen == screen[1])
|
||||
assert(#c_by_class["test_tags1"]:tags() == 2)
|
||||
|
||||
assert(c_by_class["test_tags2"].screen == screen[2])
|
||||
assert(#c_by_class["test_tags2"]:tags() == 2)
|
||||
assert(c_by_class["test_tags2"].screen == screen[2])
|
||||
assert(#c_by_class["test_tags2"]:tags() == 2)
|
||||
|
||||
assert(c_by_class["test_tags3"].screen == screen[2])
|
||||
assert(#c_by_class["test_tags3"]:tags() == 1)
|
||||
assert(c_by_class["test_tags3"].screen == screen[2])
|
||||
assert(#c_by_class["test_tags3"]:tags() == 1)
|
||||
|
||||
assert(c_by_class["test_tags4"].screen == screen[1])
|
||||
assert(#c_by_class["test_tags4"]:tags() == 1)
|
||||
assert(c_by_class["test_tags4"]:tags()[1] == screen[1].selected_tag)
|
||||
assert(c_by_class["test_tags4"].screen == screen[1])
|
||||
assert(#c_by_class["test_tags4"]:tags() == 1)
|
||||
assert(c_by_class["test_tags4"]:tags()[1] == screen[1].selected_tag)
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
require("_multi_screen")(steps, multi_screen_steps)
|
||||
|
|
|
@ -11,20 +11,20 @@ local has_spawned = false
|
|||
|
||||
local steps = {
|
||||
|
||||
-- Add enough clients
|
||||
function(count)
|
||||
if count <= 1 and not has_spawned then
|
||||
for _=1, 5 do awful.spawn("xterm") end
|
||||
has_spawned = true
|
||||
elseif #client.get() >= 5 then
|
||||
-- Add enough clients
|
||||
function(count)
|
||||
if count <= 1 and not has_spawned then
|
||||
for _=1, 5 do awful.spawn("xterm") end
|
||||
has_spawned = true
|
||||
elseif #client.get() >= 5 then
|
||||
|
||||
first_layout = client.focus:tags()[1].layout
|
||||
first_layout = client.focus:tags()[1].layout
|
||||
|
||||
t = client.focus:tags()[1]
|
||||
t = client.focus:tags()[1]
|
||||
|
||||
return true
|
||||
end
|
||||
end,
|
||||
return true
|
||||
end
|
||||
end,
|
||||
|
||||
}
|
||||
|
||||
|
@ -77,7 +77,7 @@ local common_steps = {
|
|||
end,
|
||||
function()
|
||||
t.master_fill_policy = t.master_fill_policy == "master_width_factor" and
|
||||
"expand" or "master_width_factor"
|
||||
"expand" or "master_width_factor"
|
||||
|
||||
return true
|
||||
end,
|
||||
|
|
|
@ -4,86 +4,73 @@ awful.util.deprecate = function() end
|
|||
|
||||
local has_spawned = false
|
||||
local steps = {
|
||||
function(count)
|
||||
if count <= 1 and not has_spawned and #client.get() < 2 then
|
||||
awful.spawn("xterm")
|
||||
awful.spawn("xterm")
|
||||
has_spawned = true
|
||||
|
||||
function(count)
|
||||
elseif #client.get() >= 2 then
|
||||
-- Test properties
|
||||
client.focus = client.get()[1]
|
||||
|
||||
if count <= 1 and not has_spawned and #client.get() < 2 then
|
||||
awful.spawn("xterm")
|
||||
awful.spawn("xterm")
|
||||
has_spawned = true
|
||||
elseif #client.get() >= 2 then
|
||||
local s = mouse.screen
|
||||
assert(s)
|
||||
assert(s == screen[s])
|
||||
|
||||
-- Test properties
|
||||
client.focus = client.get()[1]
|
||||
-- Test padding
|
||||
s.padding = 42
|
||||
local counter = 0
|
||||
for _, v in pairs(s.padding) do
|
||||
assert(v == 42)
|
||||
counter = counter + 1
|
||||
end
|
||||
assert(counter == 4)
|
||||
|
||||
local s = mouse.screen
|
||||
awful.screen.padding(s, {
|
||||
left = 1337,
|
||||
right = 1337,
|
||||
top = 1337,
|
||||
bottom = 1337,
|
||||
})
|
||||
counter = 0
|
||||
for _, v in pairs(s.padding) do
|
||||
assert(v == 1337)
|
||||
counter = counter + 1
|
||||
end
|
||||
assert(counter == 4)
|
||||
|
||||
assert(s)
|
||||
counter = 0
|
||||
for _, v in pairs(awful.screen.padding(s)) do
|
||||
assert(v == 1337)
|
||||
counter = counter + 1
|
||||
end
|
||||
assert(counter == 4)
|
||||
|
||||
assert(s == screen[s])
|
||||
-- Test square distance
|
||||
assert(s:get_square_distance(9999, 9999))
|
||||
assert(s:get_square_distance(9999, 9999)
|
||||
== awful.screen.getdistance_sq(s, 9999, 9999))
|
||||
|
||||
-- Test padding
|
||||
-- Test count
|
||||
counter = 0
|
||||
for _ in screen do
|
||||
counter = counter + 1
|
||||
end
|
||||
|
||||
s.padding = 42
|
||||
assert(screen.count() == counter)
|
||||
|
||||
local counter = 0
|
||||
for _, v in pairs(s.padding) do
|
||||
assert(v == 42)
|
||||
counter = counter + 1
|
||||
end
|
||||
counter = 0
|
||||
awful.screen.connect_for_each_screen(function()
|
||||
counter = counter + 1
|
||||
end)
|
||||
assert(screen.count() == counter)
|
||||
|
||||
assert(counter == 4)
|
||||
|
||||
awful.screen.padding(s, {
|
||||
left = 1337,
|
||||
right = 1337,
|
||||
top = 1337,
|
||||
bottom = 1337,
|
||||
})
|
||||
|
||||
counter = 0
|
||||
for _, v in pairs(s.padding) do
|
||||
assert(v == 1337)
|
||||
counter = counter + 1
|
||||
end
|
||||
|
||||
assert(counter == 4)
|
||||
|
||||
counter = 0
|
||||
for _, v in pairs(awful.screen.padding(s)) do
|
||||
assert(v == 1337)
|
||||
counter = counter + 1
|
||||
end
|
||||
|
||||
assert(counter == 4)
|
||||
|
||||
-- Test square distance
|
||||
|
||||
assert(s:get_square_distance(9999, 9999))
|
||||
|
||||
assert(s:get_square_distance(9999, 9999)
|
||||
== awful.screen.getdistance_sq(s, 9999, 9999))
|
||||
|
||||
-- Test count
|
||||
|
||||
counter = 0
|
||||
|
||||
for _ in screen do
|
||||
counter = counter + 1
|
||||
end
|
||||
|
||||
assert(screen.count() == counter)
|
||||
|
||||
counter = 0
|
||||
awful.screen.connect_for_each_screen(function()
|
||||
counter = counter + 1
|
||||
end)
|
||||
|
||||
assert(screen.count() == counter)
|
||||
|
||||
return true
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
||||
end
|
||||
}
|
||||
|
||||
require("_runner").run_steps(steps)
|
||||
|
||||
-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80
|
||||
|
|
|
@ -14,118 +14,118 @@ end
|
|||
local has_spawned = false
|
||||
local steps = {
|
||||
|
||||
function(count)
|
||||
function(count)
|
||||
|
||||
if count <= 1 and not has_spawned and #client.get() < 2 then
|
||||
awful.spawn("xterm")
|
||||
awful.spawn("xterm")
|
||||
has_spawned = true
|
||||
elseif #client.get() >= 2 then
|
||||
if count <= 1 and not has_spawned and #client.get() < 2 then
|
||||
awful.spawn("xterm")
|
||||
awful.spawn("xterm")
|
||||
has_spawned = true
|
||||
elseif #client.get() >= 2 then
|
||||
|
||||
-- Test move, swap and index
|
||||
-- Test move, swap and index
|
||||
|
||||
local tags = mouse.screen.tags
|
||||
local tags = mouse.screen.tags
|
||||
|
||||
assert(#mouse.screen.tags == 9)
|
||||
assert(#mouse.screen.tags == 9)
|
||||
|
||||
check_order()
|
||||
check_order()
|
||||
|
||||
tags[7].index = 9
|
||||
assert(tags[7].index == 9)
|
||||
tags[7].index = 9
|
||||
assert(tags[7].index == 9)
|
||||
|
||||
check_order()
|
||||
check_order()
|
||||
|
||||
tags[7].index = 4
|
||||
assert(tags[7].index == 4)
|
||||
tags[7].index = 4
|
||||
assert(tags[7].index == 4)
|
||||
|
||||
check_order()
|
||||
check_order()
|
||||
|
||||
awful.tag.move(5, tags[7])
|
||||
assert(tags[7].index == 5)
|
||||
awful.tag.move(5, tags[7])
|
||||
assert(tags[7].index == 5)
|
||||
|
||||
check_order()
|
||||
check_order()
|
||||
|
||||
tags[1]:swap(tags[3])
|
||||
tags[1]:swap(tags[3])
|
||||
|
||||
check_order()
|
||||
check_order()
|
||||
|
||||
assert(tags[1].index == 3)
|
||||
assert(tags[3].index == 1)
|
||||
assert(tags[1].index == 3)
|
||||
assert(tags[3].index == 1)
|
||||
|
||||
check_order()
|
||||
check_order()
|
||||
|
||||
awful.tag.swap(tags[1], tags[3])
|
||||
awful.tag.swap(tags[1], tags[3])
|
||||
|
||||
assert(tags[3].index == 3)
|
||||
assert(tags[1].index == 1)
|
||||
assert(tags[3].index == 3)
|
||||
assert(tags[1].index == 1)
|
||||
|
||||
check_order()
|
||||
check_order()
|
||||
|
||||
-- Test add, icon and delete
|
||||
-- Test add, icon and delete
|
||||
|
||||
client.focus = client.get()[1]
|
||||
local c = client.focus
|
||||
assert(c and client.focus == c)
|
||||
assert(beautiful.awesome_icon)
|
||||
client.focus = client.get()[1]
|
||||
local c = client.focus
|
||||
assert(c and client.focus == c)
|
||||
assert(beautiful.awesome_icon)
|
||||
|
||||
local t = awful.tag.add("Test", {clients={c}, icon = beautiful.awesome_icon})
|
||||
local t = awful.tag.add("Test", {clients={c}, icon = beautiful.awesome_icon})
|
||||
|
||||
check_order()
|
||||
check_order()
|
||||
|
||||
local found = false
|
||||
local found = false
|
||||
|
||||
tags = mouse.screen.tags
|
||||
tags = mouse.screen.tags
|
||||
|
||||
assert(#tags == 10)
|
||||
assert(#tags == 10)
|
||||
|
||||
for _, v in ipairs(tags) do
|
||||
if t == v then
|
||||
found = true
|
||||
break
|
||||
for _, v in ipairs(tags) do
|
||||
if t == v then
|
||||
found = true
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
assert(found)
|
||||
|
||||
assert(t:clients()[1] == c)
|
||||
assert(c:tags()[2] == t)
|
||||
assert(t.icon == beautiful.awesome_icon)
|
||||
|
||||
t:delete()
|
||||
|
||||
tags = mouse.screen.tags
|
||||
assert(#tags == 9)
|
||||
|
||||
found = false
|
||||
|
||||
for _, v in ipairs(tags) do
|
||||
if t == v then
|
||||
found = true
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
assert(not found)
|
||||
|
||||
-- Test selected tags, view only and selected()
|
||||
|
||||
t = tags[2]
|
||||
|
||||
assert(not t.selected)
|
||||
|
||||
assert(t.screen.selected_tag == tags[1])
|
||||
|
||||
t:view_only()
|
||||
|
||||
assert(t.selected)
|
||||
|
||||
assert(not tags[1].selected)
|
||||
|
||||
assert(#t.screen.selected_tags == 1)
|
||||
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
assert(found)
|
||||
|
||||
assert(t:clients()[1] == c)
|
||||
assert(c:tags()[2] == t)
|
||||
assert(t.icon == beautiful.awesome_icon)
|
||||
|
||||
t:delete()
|
||||
|
||||
tags = mouse.screen.tags
|
||||
assert(#tags == 9)
|
||||
|
||||
found = false
|
||||
|
||||
for _, v in ipairs(tags) do
|
||||
if t == v then
|
||||
found = true
|
||||
break
|
||||
end
|
||||
end
|
||||
|
||||
assert(not found)
|
||||
|
||||
-- Test selected tags, view only and selected()
|
||||
|
||||
t = tags[2]
|
||||
|
||||
assert(not t.selected)
|
||||
|
||||
assert(t.screen.selected_tag == tags[1])
|
||||
|
||||
t:view_only()
|
||||
|
||||
assert(t.selected)
|
||||
|
||||
assert(not tags[1].selected)
|
||||
|
||||
assert(#t.screen.selected_tags == 1)
|
||||
|
||||
return true
|
||||
end
|
||||
end
|
||||
}
|
||||
|
||||
local multi_screen_steps = {}
|
||||
|
|
|
@ -68,7 +68,7 @@ table.insert(steps, function()
|
|||
awful.button({}, 1, nil, function ()
|
||||
button:emit_signal_recursive("test::recursive")
|
||||
end)
|
||||
))
|
||||
))
|
||||
|
||||
layout:connect_signal("test::recursive", function()
|
||||
got_called = true
|
||||
|
@ -87,9 +87,9 @@ table.insert(steps, function()
|
|||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
assert(button._private.image ~= img)
|
||||
assert(button._private.image ~= img)
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
-- Test a button release
|
||||
|
@ -111,29 +111,29 @@ table.insert(steps, function()
|
|||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
assert(button._private.image ~= img)
|
||||
assert(button._private.image ~= img)
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
-- just make sure the button is not released for nothing
|
||||
assert(button._private.image ~= img)
|
||||
-- just make sure the button is not released for nothing
|
||||
assert(button._private.image ~= img)
|
||||
|
||||
-- test if the button is released when the mouse move out
|
||||
awful.placement.right(mouse--[[, {parent = w}]])
|
||||
root.fake_input("button_release", 1)
|
||||
-- test if the button is released when the mouse move out
|
||||
awful.placement.right(mouse--[[, {parent = w}]])
|
||||
root.fake_input("button_release", 1)
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
assert(button._private.image == img)
|
||||
assert(button._private.image == img)
|
||||
|
||||
-- The button had plenty of clicks by now. Make sure everything worked
|
||||
assert(got_called)
|
||||
-- The button had plenty of clicks by now. Make sure everything worked
|
||||
assert(got_called)
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
runner.run_steps(steps)
|
||||
|
|
|
@ -35,7 +35,7 @@ do
|
|||
time_per_iter, time_total = measure(f, iters)
|
||||
end
|
||||
print(string.format("%20s: %-10.6g sec/iter (%3d iters, %.4g sec for benchmark)",
|
||||
msg, time_per_iter, iters, timer_benchmark:elapsed()))
|
||||
msg, time_per_iter, iters, timer_benchmark:elapsed()))
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -4,30 +4,30 @@ local runner = require("_runner")
|
|||
local test_client = require("_client")
|
||||
|
||||
runner.run_steps({
|
||||
-- Spawn two clients
|
||||
function(count)
|
||||
if count == 1 then
|
||||
test_client()
|
||||
test_client()
|
||||
end
|
||||
if #client.get() >= 2 then
|
||||
return true
|
||||
end
|
||||
end,
|
||||
-- Spawn two clients
|
||||
function(count)
|
||||
if count == 1 then
|
||||
test_client()
|
||||
test_client()
|
||||
end
|
||||
if #client.get() >= 2 then
|
||||
return true
|
||||
end
|
||||
end,
|
||||
|
||||
-- Swap them
|
||||
function()
|
||||
assert(#client.get() == 2, #client.get())
|
||||
local c1 = client.get()[1]
|
||||
local c2 = client.get()[2]
|
||||
-- Swap them
|
||||
function()
|
||||
assert(#client.get() == 2, #client.get())
|
||||
local c1 = client.get()[1]
|
||||
local c2 = client.get()[2]
|
||||
|
||||
c2:swap(c1)
|
||||
c1:swap(c2)
|
||||
c1:swap(c2)
|
||||
c1:swap(c2)
|
||||
c2:swap(c1)
|
||||
return true
|
||||
end,
|
||||
})
|
||||
c2:swap(c1)
|
||||
c1:swap(c2)
|
||||
c1:swap(c2)
|
||||
c1:swap(c2)
|
||||
c2:swap(c1)
|
||||
return true
|
||||
end,
|
||||
})
|
||||
|
||||
-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80
|
||||
|
|
|
@ -17,13 +17,13 @@ dbus.connect_signal("org.awesomewm.test", dbus_callback)
|
|||
|
||||
for _=1, 2 do
|
||||
awful.spawn({
|
||||
"dbus-send",
|
||||
"--dest=org.awesomewm.test",
|
||||
"--type=method_call",
|
||||
"/",
|
||||
"org.awesomewm.test.Ping",
|
||||
"string:foo"
|
||||
})
|
||||
"dbus-send",
|
||||
"--dest=org.awesomewm.test",
|
||||
"--type=method_call",
|
||||
"/",
|
||||
"org.awesomewm.test.Ping",
|
||||
"string:foo"
|
||||
})
|
||||
end
|
||||
|
||||
runner.run_steps({ function()
|
||||
|
|
|
@ -25,32 +25,32 @@ local function callback(context, cr, width, height, arg)
|
|||
end
|
||||
|
||||
runner.run_steps({
|
||||
-- Set some bg image
|
||||
function()
|
||||
local img = assert(beautiful.titlebar_close_button_normal)
|
||||
w:set_bgimage(img)
|
||||
return true
|
||||
end,
|
||||
-- Set some bg image
|
||||
function()
|
||||
local img = assert(beautiful.titlebar_close_button_normal)
|
||||
w:set_bgimage(img)
|
||||
return true
|
||||
end,
|
||||
|
||||
-- Do nothing for a while iteration to give the repaint some time to happen
|
||||
function(arg)
|
||||
if arg == 3 then
|
||||
return true
|
||||
end
|
||||
end,
|
||||
-- Do nothing for a while iteration to give the repaint some time to happen
|
||||
function(arg)
|
||||
if arg == 3 then
|
||||
return true
|
||||
end
|
||||
end,
|
||||
|
||||
-- Set some bg image function
|
||||
function()
|
||||
w:set_bgimage(callback, "argument: 42")
|
||||
return true
|
||||
end,
|
||||
-- Set some bg image function
|
||||
function()
|
||||
w:set_bgimage(callback, "argument: 42")
|
||||
return true
|
||||
end,
|
||||
|
||||
-- Wait for the function to be done
|
||||
function()
|
||||
if callback_called then
|
||||
return true
|
||||
end
|
||||
end,
|
||||
})
|
||||
-- Wait for the function to be done
|
||||
function()
|
||||
if callback_called then
|
||||
return true
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80
|
||||
|
|
|
@ -9,40 +9,40 @@ beautiful.border_normal = "#0000ff"
|
|||
beautiful.border_focus = "#00ff00"
|
||||
|
||||
client.connect_signal("focus", function(c)
|
||||
c.border_color = "#ff0000"
|
||||
c.border_color = "#ff0000"
|
||||
end)
|
||||
|
||||
|
||||
local steps = {
|
||||
-- border_color should get applied via focus signal for first client on tag.
|
||||
function(count)
|
||||
if count == 1 then
|
||||
awful.spawn("xterm")
|
||||
else
|
||||
local c = client.get()[1]
|
||||
if c then
|
||||
assert(c.border_color == "#ff0000")
|
||||
return true
|
||||
end
|
||||
end
|
||||
end,
|
||||
|
||||
-- border_color should get applied via focus signal for second client on tag.
|
||||
function(count)
|
||||
if count == 1 then
|
||||
awful.spawn("xterm")
|
||||
else
|
||||
if #client.get() == 2 then
|
||||
local c = client.get()[1]
|
||||
assert(c == client.focus)
|
||||
if c then
|
||||
assert(c.border_color == "#ff0000")
|
||||
return true
|
||||
-- border_color should get applied via focus signal for first client on tag.
|
||||
function(count)
|
||||
if count == 1 then
|
||||
awful.spawn("xterm")
|
||||
else
|
||||
local c = client.get()[1]
|
||||
if c then
|
||||
assert(c.border_color == "#ff0000")
|
||||
return true
|
||||
end
|
||||
end
|
||||
end,
|
||||
|
||||
end
|
||||
-- border_color should get applied via focus signal for second client on tag.
|
||||
function(count)
|
||||
if count == 1 then
|
||||
awful.spawn("xterm")
|
||||
else
|
||||
if #client.get() == 2 then
|
||||
local c = client.get()[1]
|
||||
assert(c == client.focus)
|
||||
if c then
|
||||
assert(c.border_color == "#ff0000")
|
||||
return true
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
}
|
||||
|
||||
runner.run_steps(steps)
|
||||
|
|
|
@ -11,14 +11,14 @@ local w1_draw, w2_draw
|
|||
-- Disable automatic placement
|
||||
awful.rules.rules = {
|
||||
{ rule = { }, properties = {
|
||||
border_width = 0,
|
||||
size_hints_honor = false,
|
||||
x = 0,
|
||||
y = 0,
|
||||
width = 100,
|
||||
height = 100,
|
||||
border_color = beautiful.border_normal
|
||||
}
|
||||
border_width = 0,
|
||||
size_hints_honor = false,
|
||||
x = 0,
|
||||
y = 0,
|
||||
width = 100,
|
||||
height = 100,
|
||||
border_color = beautiful.border_normal
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -55,22 +55,22 @@ local steps = {
|
|||
awful.rules.rules = {
|
||||
-- All clients will match this rule.
|
||||
{ rule = { },properties = {
|
||||
titlebars_enabled = true,
|
||||
border_width = 10,
|
||||
border_color = "#00ff00",
|
||||
size_hints_honor = false,
|
||||
x = 0,
|
||||
y = 0,
|
||||
width = 100,
|
||||
height = 100
|
||||
}
|
||||
}
|
||||
titlebars_enabled = true,
|
||||
border_width = 10,
|
||||
border_color = "#00ff00",
|
||||
size_hints_honor = false,
|
||||
x = 0,
|
||||
y = 0,
|
||||
width = 100,
|
||||
height = 100
|
||||
}
|
||||
return true
|
||||
}
|
||||
}
|
||||
return true
|
||||
end,
|
||||
function(count)
|
||||
if count == 1 then
|
||||
awful.spawn("xterm")
|
||||
awful.spawn("xterm")
|
||||
else
|
||||
local c = client.get()[1]
|
||||
if c then
|
||||
|
|
|
@ -6,17 +6,17 @@ local wibox = require("wibox")
|
|||
-- "Enable" titlebars (so that the titlebar can prevent garbage collection)
|
||||
client.connect_signal("manage", function (c)
|
||||
local buttons = awful.util.table.join(
|
||||
awful.button({ }, 1, function()
|
||||
client.focus = c
|
||||
c:raise()
|
||||
awful.mouse.client.move(c)
|
||||
end),
|
||||
awful.button({ }, 3, function()
|
||||
client.focus = c
|
||||
c:raise()
|
||||
awful.mouse.client.resize(c)
|
||||
end)
|
||||
)
|
||||
awful.button({ }, 1, function()
|
||||
client.focus = c
|
||||
c:raise()
|
||||
awful.mouse.client.move(c)
|
||||
end),
|
||||
awful.button({ }, 3, function()
|
||||
client.focus = c
|
||||
c:raise()
|
||||
awful.mouse.client.resize(c)
|
||||
end)
|
||||
)
|
||||
|
||||
-- Widgets that are aligned to the left
|
||||
local left_layout = wibox.layout.fixed.horizontal(awful.titlebar.widget.iconwidget(c))
|
||||
|
@ -37,7 +37,7 @@ client.connect_signal("manage", function (c)
|
|||
awful.titlebar.widget.stickybutton(c),
|
||||
awful.titlebar.widget.ontopbutton(c),
|
||||
awful.titlebar.widget.closebutton(c)
|
||||
)), { position = "bottom"})
|
||||
)), { position = "bottom"})
|
||||
end)
|
||||
|
||||
-- We tell the garbage collector when to work, disable it
|
||||
|
|
|
@ -21,23 +21,23 @@ table.insert(steps, function(count)
|
|||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
-- The mousegrabber expect a button to be pressed.
|
||||
root.fake_input("button_press",1)
|
||||
local c = client.get()[1]
|
||||
-- The mousegrabber expect a button to be pressed.
|
||||
root.fake_input("button_press",1)
|
||||
local c = client.get()[1]
|
||||
|
||||
-- Just in case there is an accidental delayed geometry callback
|
||||
assert(c:geometry().x == 200)
|
||||
assert(c:geometry().y == 200)
|
||||
assert(c:geometry().width == 300)
|
||||
assert(c:geometry().height == 300)
|
||||
-- Just in case there is an accidental delayed geometry callback
|
||||
assert(c:geometry().x == 200)
|
||||
assert(c:geometry().y == 200)
|
||||
assert(c:geometry().width == 300)
|
||||
assert(c:geometry().height == 300)
|
||||
|
||||
mouse.coords {x = 500+2*c.border_width, y= 500+2*c.border_width}
|
||||
mouse.coords {x = 500+2*c.border_width, y= 500+2*c.border_width}
|
||||
|
||||
local corner = amouse.client.resize(c)
|
||||
local corner = amouse.client.resize(c)
|
||||
|
||||
assert(corner == "bottom_right")
|
||||
assert(corner == "bottom_right")
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
-- The geometry should remain the same, as the cursor is placed at the end of
|
||||
|
@ -108,8 +108,8 @@ table.insert(steps, function()
|
|||
|
||||
assert(c:geometry().x == 100)
|
||||
assert(c:geometry().y == 200)
|
||||
-- assert(c:geometry().width == 200-2*c.border_width) --FIXME off by border width...
|
||||
-- assert(c:geometry().height == 200-2*c.border_width) --FIXME off by border width...
|
||||
-- assert(c:geometry().width == 200-2*c.border_width) --FIXME off by border width...
|
||||
-- assert(c:geometry().height == 200-2*c.border_width) --FIXME off by border width...
|
||||
|
||||
mouse.coords {x = 300, y= 200}
|
||||
|
||||
|
@ -120,9 +120,9 @@ end)
|
|||
table.insert(steps, function()
|
||||
root.fake_input("button_release",1)
|
||||
|
||||
-- if not mousegrabber.isrunning then --FIXME it should work, but doesn't
|
||||
-- return true
|
||||
-- end
|
||||
-- if not mousegrabber.isrunning then --FIXME it should work, but doesn't
|
||||
-- return true
|
||||
-- end
|
||||
|
||||
mousegrabber.stop()
|
||||
|
||||
|
@ -143,7 +143,7 @@ table.insert(steps, function()
|
|||
placement.bottom_right(c)
|
||||
|
||||
mouse.coords {x = c.screen.geometry.width -150,
|
||||
y = c.screen.geometry.height-150}
|
||||
y = c.screen.geometry.height-150}
|
||||
|
||||
|
||||
return true
|
||||
|
|
|
@ -10,15 +10,15 @@ local function exit_callback(cause, signal)
|
|||
done = true
|
||||
end
|
||||
local pid = awesome.spawn({"/bin/sh", "-c", "sleep 60"}, false, false,
|
||||
false, false, exit_callback)
|
||||
false, false, exit_callback)
|
||||
awesome.kill(pid, awesome.unix_signal.SIGKILL)
|
||||
|
||||
runner.run_steps({
|
||||
function()
|
||||
if done then
|
||||
return true
|
||||
end
|
||||
end
|
||||
})
|
||||
function()
|
||||
if done then
|
||||
return true
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80
|
||||
|
|
|
@ -6,10 +6,10 @@ local test_client = require("_client")
|
|||
local manage_called, c_snid
|
||||
|
||||
client.connect_signal("manage", function(c)
|
||||
manage_called = true
|
||||
c_snid = c.startup_id
|
||||
assert(c.machine == awesome.hostname,
|
||||
tostring(c.machine) .. " ~= " .. tostring(awesome.hostname))
|
||||
manage_called = true
|
||||
c_snid = c.startup_id
|
||||
assert(c.machine == awesome.hostname,
|
||||
tostring(c.machine) .. " ~= " .. tostring(awesome.hostname))
|
||||
end)
|
||||
|
||||
local snid
|
||||
|
@ -20,39 +20,39 @@ local function callback(c)
|
|||
end
|
||||
|
||||
local steps = {
|
||||
function(count)
|
||||
if count == 1 then
|
||||
snid = test_client("foo", "bar", true)
|
||||
elseif manage_called then
|
||||
assert(snid)
|
||||
assert(snid == c_snid)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
function(count)
|
||||
if count == 1 then
|
||||
snid = test_client("foo", "bar", true)
|
||||
elseif manage_called then
|
||||
assert(snid)
|
||||
assert(snid == c_snid)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
|
||||
-- Test that c.startup_id is nil for a client without startup notifications,
|
||||
-- and especially not the one from the previous spawn.
|
||||
function(count)
|
||||
if count == 1 then
|
||||
manage_called = false
|
||||
test_client("bar", "foo", false)
|
||||
elseif manage_called then
|
||||
assert(c_snid == nil, "c.startup_snid should be nil!")
|
||||
return true
|
||||
end
|
||||
end,
|
||||
-- Test that c.startup_id is nil for a client without startup notifications,
|
||||
-- and especially not the one from the previous spawn.
|
||||
function(count)
|
||||
if count == 1 then
|
||||
manage_called = false
|
||||
test_client("bar", "foo", false)
|
||||
elseif manage_called then
|
||||
assert(c_snid == nil, "c.startup_snid should be nil!")
|
||||
return true
|
||||
end
|
||||
end,
|
||||
|
||||
function(count)
|
||||
if count == 1 then
|
||||
manage_called = false
|
||||
snid = test_client("baz", "barz", false, callback)
|
||||
elseif manage_called then
|
||||
assert(snid)
|
||||
assert(snid == c_snid)
|
||||
assert(num_callbacks == 1, num_callbacks)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
function(count)
|
||||
if count == 1 then
|
||||
manage_called = false
|
||||
snid = test_client("baz", "barz", false, callback)
|
||||
elseif manage_called then
|
||||
assert(snid)
|
||||
assert(snid == c_snid)
|
||||
assert(num_callbacks == 1, num_callbacks)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
}
|
||||
|
||||
runner.run_steps(steps)
|
||||
|
|
|
@ -10,89 +10,89 @@ local exit_yay, exit_snd = nil, nil
|
|||
-- * spawn with startup notification is covered by test-spawn-snid.lua
|
||||
|
||||
local steps = {
|
||||
function()
|
||||
-- Test various error conditions. There are quite a number of them...
|
||||
local error_message
|
||||
function()
|
||||
-- Test various error conditions. There are quite a number of them...
|
||||
local error_message
|
||||
|
||||
error_message = spawn("this_does_not_exist_and_should_fail")
|
||||
assert(string.find(error_message, 'No such file or directory'), error_message)
|
||||
error_message = spawn("this_does_not_exist_and_should_fail")
|
||||
assert(string.find(error_message, 'No such file or directory'), error_message)
|
||||
|
||||
error_message = spawn({"this_does_not_exist_and_should_fail"})
|
||||
assert(string.find(error_message, 'No such file or directory'), error_message)
|
||||
error_message = spawn({"this_does_not_exist_and_should_fail"})
|
||||
assert(string.find(error_message, 'No such file or directory'), error_message)
|
||||
|
||||
error_message = spawn("foo '")
|
||||
assert(string.find(error_message, 'parse error: Text ended before matching quote was found'), error_message)
|
||||
error_message = spawn("foo '")
|
||||
assert(string.find(error_message, 'parse error: Text ended before matching quote was found'), error_message)
|
||||
|
||||
error_message = spawn()
|
||||
assert(string.find(error_message, 'No command to execute'), error_message)
|
||||
error_message = spawn()
|
||||
assert(string.find(error_message, 'No command to execute'), error_message)
|
||||
|
||||
error_message = spawn(" ")
|
||||
assert(string.find(error_message, 'Text was empty'), error_message)
|
||||
error_message = spawn(" ")
|
||||
assert(string.find(error_message, 'Text was empty'), error_message)
|
||||
|
||||
error_message = spawn("")
|
||||
assert(string.find(error_message, 'No command to execute'), error_message)
|
||||
error_message = spawn("")
|
||||
assert(string.find(error_message, 'No command to execute'), error_message)
|
||||
|
||||
error_message = spawn{}
|
||||
assert(string.find(error_message, 'There is nothing to execute'), error_message)
|
||||
error_message = spawn{}
|
||||
assert(string.find(error_message, 'There is nothing to execute'), error_message)
|
||||
|
||||
return true
|
||||
end,
|
||||
return true
|
||||
end,
|
||||
|
||||
function(count)
|
||||
if count == 1 then
|
||||
local steps_yay = 0
|
||||
spawn.with_line_callback("echo yay", {
|
||||
stdout = function(line)
|
||||
assert(line == "yay", "line == '" .. tostring(line) .. "'")
|
||||
assert(steps_yay == 0)
|
||||
steps_yay = steps_yay + 1
|
||||
end,
|
||||
output_done = function()
|
||||
assert(steps_yay == 1)
|
||||
steps_yay = steps_yay + 1
|
||||
spawns_done = spawns_done + 1
|
||||
end,
|
||||
exit = function(reason, code)
|
||||
assert(reason == "exit")
|
||||
assert(exit_yay == nil)
|
||||
assert(code == 0)
|
||||
exit_yay = code
|
||||
end
|
||||
})
|
||||
function(count)
|
||||
if count == 1 then
|
||||
local steps_yay = 0
|
||||
spawn.with_line_callback("echo yay", {
|
||||
stdout = function(line)
|
||||
assert(line == "yay", "line == '" .. tostring(line) .. "'")
|
||||
assert(steps_yay == 0)
|
||||
steps_yay = steps_yay + 1
|
||||
end,
|
||||
output_done = function()
|
||||
assert(steps_yay == 1)
|
||||
steps_yay = steps_yay + 1
|
||||
spawns_done = spawns_done + 1
|
||||
end,
|
||||
exit = function(reason, code)
|
||||
assert(reason == "exit")
|
||||
assert(exit_yay == nil)
|
||||
assert(code == 0)
|
||||
exit_yay = code
|
||||
end
|
||||
})
|
||||
|
||||
local steps_count = 0
|
||||
local err_count = 0
|
||||
spawn.with_line_callback({ "sh", "-c", "printf line1\\\\nline2\\\\nline3 ; echo err >&2 ; exit 42" }, {
|
||||
stdout = function(line)
|
||||
assert(steps_count < 3)
|
||||
steps_count = steps_count + 1
|
||||
assert(line == "line" .. steps_count, "line == '" .. tostring(line) .. "'")
|
||||
end,
|
||||
stderr = function(line)
|
||||
assert(err_count == 0)
|
||||
err_count = err_count + 1
|
||||
assert(line == "err", "line == '" .. tostring(line) .. "'")
|
||||
end,
|
||||
output_done = function()
|
||||
assert(steps_count == 3)
|
||||
assert(err_count == 1)
|
||||
steps_count = steps_count + 1
|
||||
spawns_done = spawns_done + 1
|
||||
end,
|
||||
exit = function(reason, code)
|
||||
assert(reason == "exit")
|
||||
assert(exit_snd == nil)
|
||||
assert(code == 42)
|
||||
exit_snd = code
|
||||
end
|
||||
})
|
||||
end
|
||||
if spawns_done == 2 then
|
||||
assert(exit_yay == 0)
|
||||
assert(exit_snd == 42)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
local steps_count = 0
|
||||
local err_count = 0
|
||||
spawn.with_line_callback({ "sh", "-c", "printf line1\\\\nline2\\\\nline3 ; echo err >&2 ; exit 42" }, {
|
||||
stdout = function(line)
|
||||
assert(steps_count < 3)
|
||||
steps_count = steps_count + 1
|
||||
assert(line == "line" .. steps_count, "line == '" .. tostring(line) .. "'")
|
||||
end,
|
||||
stderr = function(line)
|
||||
assert(err_count == 0)
|
||||
err_count = err_count + 1
|
||||
assert(line == "err", "line == '" .. tostring(line) .. "'")
|
||||
end,
|
||||
output_done = function()
|
||||
assert(steps_count == 3)
|
||||
assert(err_count == 1)
|
||||
steps_count = steps_count + 1
|
||||
spawns_done = spawns_done + 1
|
||||
end,
|
||||
exit = function(reason, code)
|
||||
assert(reason == "exit")
|
||||
assert(exit_snd == nil)
|
||||
assert(code == 42)
|
||||
exit_snd = code
|
||||
end
|
||||
})
|
||||
end
|
||||
if spawns_done == 2 then
|
||||
assert(exit_yay == 0)
|
||||
assert(exit_snd == 42)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
}
|
||||
|
||||
runner.run_steps(steps)
|
||||
|
|
|
@ -78,49 +78,49 @@ table.insert(steps, function()
|
|||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
assert(parent:geometry().width == 500)
|
||||
assert(parent:geometry().height == 500)
|
||||
assert(parent:geometry().width == 500)
|
||||
assert(parent:geometry().height == 500)
|
||||
|
||||
assert(parent:geometry().y == small:geometry().y)
|
||||
assert(parent:geometry().x == small:geometry().x)
|
||||
assert(parent:geometry().width == small:geometry().width )
|
||||
assert(small:geometry().height == 24)
|
||||
assert(parent:geometry().y == small:geometry().y)
|
||||
assert(parent:geometry().x == small:geometry().x)
|
||||
assert(parent:geometry().width == small:geometry().width )
|
||||
assert(small:geometry().height == 24)
|
||||
|
||||
-- Now, move the parent and see of the attached one is correctly updated
|
||||
placement.stretch_left(parent)
|
||||
-- Now, move the parent and see of the attached one is correctly updated
|
||||
placement.stretch_left(parent)
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
assert(parent:geometry().y == small:geometry().y)
|
||||
assert(parent:geometry().x == small:geometry().x)
|
||||
assert(parent:geometry().width == small:geometry().width )
|
||||
assert(small:geometry().height == 24)
|
||||
assert(parent:geometry().y == small:geometry().y)
|
||||
assert(parent:geometry().x == small:geometry().x)
|
||||
assert(parent:geometry().width == small:geometry().width )
|
||||
assert(small:geometry().height == 24)
|
||||
|
||||
-- Do the same, but with placement compositing
|
||||
small = wibox {
|
||||
bg = "#ff0000",
|
||||
height = 50,
|
||||
width = 50,
|
||||
ontop = true,
|
||||
visible = true,
|
||||
}
|
||||
-- Do the same, but with placement compositing
|
||||
small = wibox {
|
||||
bg = "#ff0000",
|
||||
height = 50,
|
||||
width = 50,
|
||||
ontop = true,
|
||||
visible = true,
|
||||
}
|
||||
|
||||
local p = placement.bottom_right + placement.scale
|
||||
local p = placement.bottom_right + placement.scale
|
||||
|
||||
p(small, {parent=parent, attach=true, direction="left", to_percent=0.5})
|
||||
p(small, {parent=parent, attach=true, direction="left", to_percent=0.5})
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
local function check_ratio()
|
||||
assert(
|
||||
(
|
||||
parent:geometry().y
|
||||
parent:geometry().y
|
||||
+ parent:geometry().height
|
||||
- small :geometry().height
|
||||
) == small:geometry().y
|
||||
) == small:geometry().y
|
||||
)
|
||||
|
||||
assert(math.abs(parent:geometry().x + math.ceil(parent:geometry().width/2) - small:geometry().x) <= 1)
|
||||
|
@ -153,27 +153,27 @@ table.insert(steps, function()
|
|||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
local wa = screen.primary.workarea
|
||||
local sgeo = screen.primary.geometry
|
||||
local wgeo = twibar:geometry()
|
||||
local wa = screen.primary.workarea
|
||||
local sgeo = screen.primary.geometry
|
||||
local wgeo = twibar:geometry()
|
||||
|
||||
assert(wa.width == sgeo.width )
|
||||
assert(wa.x == sgeo.x )
|
||||
assert(wa.y == sgeo.y + wgeo.height )
|
||||
assert(wa.width == sgeo.width )
|
||||
assert(wa.x == sgeo.x )
|
||||
assert(wa.y == sgeo.y + wgeo.height )
|
||||
-- assert(wa.height == sgeo.height - wgeo.height)
|
||||
-- assert(wgeo.height == sgeo.height - wa.height )
|
||||
|
||||
assert(parent.y == wa.y )
|
||||
assert(parent.x == wa.x )
|
||||
assert(parent.width == wa.width )
|
||||
assert(parent.height == wa.height )
|
||||
assert(parent.y == wa.y )
|
||||
assert(parent.x == wa.x )
|
||||
assert(parent.width == wa.width )
|
||||
assert(parent.height == wa.height )
|
||||
|
||||
-- Add more wibars
|
||||
bwibar = wibar {position = "bottom", bg = "#00ff00"}
|
||||
lwibar = wibar {position = "left" , bg = "#0000ff"}
|
||||
rwibar = wibar {position = "right" , bg = "#ff00ff"}
|
||||
-- Add more wibars
|
||||
bwibar = wibar {position = "bottom", bg = "#00ff00"}
|
||||
lwibar = wibar {position = "left" , bg = "#0000ff"}
|
||||
rwibar = wibar {position = "right" , bg = "#ff00ff"}
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
-- Make sure the maximized client has the right size and position
|
||||
|
@ -217,7 +217,7 @@ table.insert(steps, function()
|
|||
parent.border_color = "#ffff00"
|
||||
parent.border_width = 10
|
||||
parent.ontop = true
|
||||
-- parent.visible = false
|
||||
-- parent.visible = false
|
||||
|
||||
local wa = screen.primary.workarea
|
||||
local sgeo = screen.primary.geometry
|
||||
|
@ -243,54 +243,54 @@ table.insert(steps, function()
|
|||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
check_maximize()
|
||||
check_maximize()
|
||||
|
||||
-- There should be a detach callback
|
||||
assert(lwibar.detach_callback)
|
||||
-- There should be a detach callback
|
||||
assert(lwibar.detach_callback)
|
||||
|
||||
-- Begin to move wibars around
|
||||
lwibar.position = "top"
|
||||
assert(lwibar.position == "top")
|
||||
assert(lwibar.y == twibar.height)
|
||||
-- Begin to move wibars around
|
||||
lwibar.position = "top"
|
||||
assert(lwibar.position == "top")
|
||||
assert(lwibar.y == twibar.height)
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
check_maximize()
|
||||
check_maximize()
|
||||
|
||||
bwibar.position = "right"
|
||||
bwibar.ontop = true
|
||||
rwibar.ontop = true
|
||||
assert(bwibar.position == "right")
|
||||
bwibar.position = "right"
|
||||
bwibar.ontop = true
|
||||
rwibar.ontop = true
|
||||
assert(bwibar.position == "right")
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
check_maximize()
|
||||
check_maximize()
|
||||
|
||||
rwibar.position = "top"
|
||||
rwibar.position = "top"
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
check_maximize()
|
||||
check_maximize()
|
||||
|
||||
bwibar.position = "top"
|
||||
bwibar.position = "top"
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
check_maximize()
|
||||
check_maximize()
|
||||
|
||||
for _, w in ipairs {twibar, lwibar, rwibar, bwibar} do
|
||||
w.position = "right"
|
||||
end
|
||||
for _, w in ipairs {twibar, lwibar, rwibar, bwibar} do
|
||||
w.position = "right"
|
||||
end
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
-- Test visibility
|
||||
|
@ -304,17 +304,17 @@ table.insert(steps, function()
|
|||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
check_maximize()
|
||||
check_maximize()
|
||||
|
||||
twibar.visible = true
|
||||
twibar.visible = true
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
check_maximize()
|
||||
check_maximize()
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
|
||||
|
|
|
@ -11,100 +11,100 @@ assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent") == nil)
|
|||
-- TODO: generalize and move to runner.
|
||||
local urgent_cb_done
|
||||
client.connect_signal("property::urgent", function (c)
|
||||
urgent_cb_done = true
|
||||
assert(c.class == "XTerm", "Client should be xterm!")
|
||||
urgent_cb_done = true
|
||||
assert(c.class == "XTerm", "Client should be xterm!")
|
||||
end)
|
||||
|
||||
local manage_cb_done
|
||||
client.connect_signal("manage", function (c)
|
||||
manage_cb_done = true
|
||||
assert(c.class == "XTerm", "Client should be xterm!")
|
||||
manage_cb_done = true
|
||||
assert(c.class == "XTerm", "Client should be xterm!")
|
||||
end)
|
||||
|
||||
|
||||
-- Steps to do for this test.
|
||||
local steps = {
|
||||
-- Step 1: tag 2 should become urgent, when a client gets tagged via rules.
|
||||
function(count)
|
||||
if count == 1 then -- Setup.
|
||||
urgent_cb_done = false
|
||||
-- Select first tag.
|
||||
awful.screen.focused().tags[1]:view_only()
|
||||
-- Step 1: tag 2 should become urgent, when a client gets tagged via rules.
|
||||
function(count)
|
||||
if count == 1 then -- Setup.
|
||||
urgent_cb_done = false
|
||||
-- Select first tag.
|
||||
awful.screen.focused().tags[1]:view_only()
|
||||
|
||||
runner.add_to_default_rules({ rule = { class = "XTerm" },
|
||||
properties = { tag = "2", focus = true } })
|
||||
runner.add_to_default_rules({ rule = { class = "XTerm" },
|
||||
properties = { tag = "2", focus = true } })
|
||||
|
||||
awful.spawn("xterm")
|
||||
end
|
||||
if urgent_cb_done then
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent") == true)
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent_count") == 1)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
awful.spawn("xterm")
|
||||
end
|
||||
if urgent_cb_done then
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent") == true)
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent_count") == 1)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
|
||||
-- Step 2: when switching to tag 2, it should not be urgent anymore.
|
||||
function(count)
|
||||
if count == 1 then
|
||||
-- Setup: switch to tag.
|
||||
root.fake_input("key_press", "Super_L")
|
||||
root.fake_input("key_press", "2")
|
||||
root.fake_input("key_release", "2")
|
||||
root.fake_input("key_release", "Super_L")
|
||||
-- Step 2: when switching to tag 2, it should not be urgent anymore.
|
||||
function(count)
|
||||
if count == 1 then
|
||||
-- Setup: switch to tag.
|
||||
root.fake_input("key_press", "Super_L")
|
||||
root.fake_input("key_press", "2")
|
||||
root.fake_input("key_release", "2")
|
||||
root.fake_input("key_release", "Super_L")
|
||||
|
||||
elseif awful.screen.focused().selected_tags[1] == awful.screen.focused().tags[2] then
|
||||
assert(#client.get() == 1)
|
||||
local c = client.get()[1]
|
||||
assert(not c.urgent, "Client is not urgent anymore.")
|
||||
assert(c == client.focus, "Client is focused.")
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent") == false)
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent_count") == 0)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
elseif awful.screen.focused().selected_tags[1] == awful.screen.focused().tags[2] then
|
||||
assert(#client.get() == 1)
|
||||
local c = client.get()[1]
|
||||
assert(not c.urgent, "Client is not urgent anymore.")
|
||||
assert(c == client.focus, "Client is focused.")
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent") == false)
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent_count") == 0)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
|
||||
-- Step 3: tag 2 should not be urgent, but switched to.
|
||||
function(count)
|
||||
if count == 1 then -- Setup.
|
||||
urgent_cb_done = false
|
||||
-- Step 3: tag 2 should not be urgent, but switched to.
|
||||
function(count)
|
||||
if count == 1 then -- Setup.
|
||||
urgent_cb_done = false
|
||||
|
||||
-- Select first tag.
|
||||
awful.screen.focused().tags[1]:view_only()
|
||||
-- Select first tag.
|
||||
awful.screen.focused().tags[1]:view_only()
|
||||
|
||||
runner.add_to_default_rules({ rule = { class = "XTerm" },
|
||||
properties = { tag = "2", focus = true, switchtotag = true }})
|
||||
runner.add_to_default_rules({ rule = { class = "XTerm" },
|
||||
properties = { tag = "2", focus = true, switchtotag = true }})
|
||||
|
||||
awful.spawn("xterm")
|
||||
awful.spawn("xterm")
|
||||
|
||||
elseif awful.screen.focused().selected_tags[1] == awful.screen.focused().tags[2] then
|
||||
assert(not urgent_cb_done)
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent") == false)
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent_count") == 0)
|
||||
assert(awful.screen.focused().selected_tags[2] == nil)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
elseif awful.screen.focused().selected_tags[1] == awful.screen.focused().tags[2] then
|
||||
assert(not urgent_cb_done)
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent") == false)
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent_count") == 0)
|
||||
assert(awful.screen.focused().selected_tags[2] == nil)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
|
||||
|
||||
-- Step 4: tag 2 should not become urgent, when a client gets tagged via
|
||||
-- rules with focus=false.
|
||||
function(count)
|
||||
if count == 1 then -- Setup.
|
||||
client.get()[1]:kill()
|
||||
manage_cb_done = false
|
||||
-- Step 4: tag 2 should not become urgent, when a client gets tagged via
|
||||
-- rules with focus=false.
|
||||
function(count)
|
||||
if count == 1 then -- Setup.
|
||||
client.get()[1]:kill()
|
||||
manage_cb_done = false
|
||||
|
||||
runner.add_to_default_rules({rule = { class = "XTerm" },
|
||||
properties = { tag = "2", focus = false }})
|
||||
runner.add_to_default_rules({rule = { class = "XTerm" },
|
||||
properties = { tag = "2", focus = false }})
|
||||
|
||||
awful.spawn("xterm")
|
||||
end
|
||||
if manage_cb_done then
|
||||
assert(client.get()[1].urgent == false)
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent") == false)
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent_count") == 0)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
awful.spawn("xterm")
|
||||
end
|
||||
if manage_cb_done then
|
||||
assert(client.get()[1].urgent == false)
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent") == false)
|
||||
assert(awful.tag.getproperty(awful.screen.focused().tags[2], "urgent_count") == 0)
|
||||
return true
|
||||
end
|
||||
end,
|
||||
}
|
||||
|
||||
runner.run_steps(steps)
|
||||
|
|
|
@ -54,83 +54,83 @@ table.insert(steps, function()
|
|||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
wp.fit(img, screen[1], "#00ff00")
|
||||
wp.fit(img, screen[1], "#00ff00")
|
||||
|
||||
-- There is a delayed call for the last call, let it be processed before
|
||||
-- adding more
|
||||
return true
|
||||
-- There is a delayed call for the last call, let it be processed before
|
||||
-- adding more
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
wp.centered(img, nil, nil)
|
||||
wp.centered(img, screen[1], nil)
|
||||
wp.centered(img, nil, nil)
|
||||
wp.centered(img, screen[1], nil)
|
||||
|
||||
-- There is a delayed call for the last call, let it be processed before
|
||||
-- adding more
|
||||
return true
|
||||
-- There is a delayed call for the last call, let it be processed before
|
||||
-- adding more
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
wp.centered(img, screen[1], "#00ff00")
|
||||
wp.centered(img, screen[1], "#00ff00")
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
wp.maximized(img, nil, nil, nil)
|
||||
wp.maximized(img, nil, nil, nil)
|
||||
|
||||
-- There is a delayed call for the last call, let it be processed before
|
||||
-- adding more
|
||||
return true
|
||||
-- There is a delayed call for the last call, let it be processed before
|
||||
-- adding more
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
wp.maximized(img, screen[1], nil, nil)
|
||||
wp.maximized(img, screen[1], nil, nil)
|
||||
|
||||
-- There is a delayed call for the last call, let it be processed before
|
||||
-- adding more
|
||||
return true
|
||||
-- There is a delayed call for the last call, let it be processed before
|
||||
-- adding more
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
|
||||
wp.maximized(img, screen[1], false, nil)
|
||||
wp.maximized(img, screen[1], true, nil)
|
||||
wp.maximized(img, screen[1], false, nil)
|
||||
wp.maximized(img, screen[1], true, nil)
|
||||
|
||||
-- There is a delayed call for the last call, let it be processed before
|
||||
-- adding more
|
||||
return true
|
||||
-- There is a delayed call for the last call, let it be processed before
|
||||
-- adding more
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
|
||||
wp.maximized(img, screen[1], false, {x=10, y= 10})
|
||||
wp.maximized(img, screen[1], true, {x=10, y= 10})
|
||||
wp.maximized(img, screen[1], false, {x=10, y= 10})
|
||||
wp.maximized(img, screen[1], true, {x=10, y= 10})
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
wp.tiled(img, nil, nil)
|
||||
wp.tiled(img, screen[1], nil)
|
||||
wp.tiled(img, nil, nil)
|
||||
wp.tiled(img, screen[1], nil)
|
||||
|
||||
-- There is a delayed call for the last call, let it be processed before
|
||||
-- adding more
|
||||
return true
|
||||
-- There is a delayed call for the last call, let it be processed before
|
||||
-- adding more
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
wp.tiled(img, screen[1], {x=10, y= 10})
|
||||
wp.tiled(img, screen[1], {x=10, y= 10})
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
table.insert(steps, function()
|
||||
for _, c in ipairs(colors) do
|
||||
wp.set(c)
|
||||
end
|
||||
for _, c in ipairs(colors) do
|
||||
wp.set(c)
|
||||
end
|
||||
|
||||
return true
|
||||
return true
|
||||
end)
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue