tests: Add a notification template.
This commit is contained in:
parent
d99f8461ef
commit
441c4ae98c
|
@ -0,0 +1,55 @@
|
||||||
|
local file_path, image_path = ...
|
||||||
|
require("_common_template")(...)
|
||||||
|
local wibox = require("wibox")
|
||||||
|
|
||||||
|
-- For the connections
|
||||||
|
require("naughty")
|
||||||
|
|
||||||
|
-- Create a screen
|
||||||
|
screen[1]._resize {x = 0, width = 800, height = 600}
|
||||||
|
|
||||||
|
-- Let the test request a size and file format
|
||||||
|
loadfile(file_path)()
|
||||||
|
|
||||||
|
-- Emulate the event loop for 10 iterations
|
||||||
|
for _ = 1, 10 do
|
||||||
|
awesome:emit_signal("refresh")
|
||||||
|
end
|
||||||
|
|
||||||
|
local rect = {x1 = math.huge ,y1 = math.huge , x2 = -math.huge , y2 = -math.huge}
|
||||||
|
|
||||||
|
-- Get the region with wiboxes
|
||||||
|
for _, d in ipairs(drawin.get()) do
|
||||||
|
local w = d.get_wibox and d:get_wibox() or nil
|
||||||
|
if w then
|
||||||
|
local geo = w:geometry()
|
||||||
|
rect.x1 = math.min(rect.x1, geo.x )
|
||||||
|
rect.y1 = math.min(rect.y1, geo.y )
|
||||||
|
rect.x2 = math.max(rect.x2, geo.x + geo.width + 2*w.border_width)
|
||||||
|
rect.y2 = math.max(rect.y2, geo.y + geo.height + 2*w.border_width)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Get rid of invalid drawins. The shims are very permissive and wont deny this.
|
||||||
|
if rect.x1 == rect.x2 or rect.y1 == rect.y2 then return end
|
||||||
|
|
||||||
|
local multi = wibox.layout {
|
||||||
|
forced_width = rect.x2 - rect.x1,
|
||||||
|
forced_height = rect.y2 - rect.y1,
|
||||||
|
layout = wibox.layout.manual
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Draw all normal wiboxes
|
||||||
|
for _, d in ipairs(drawin.get()) do
|
||||||
|
local w = d.get_wibox and d:get_wibox() or nil
|
||||||
|
if w then
|
||||||
|
local geo = w:geometry()
|
||||||
|
multi:add_at(w:to_widget(), {x = geo.x - rect.x1, y = geo.y - rect.y1})
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
wibox.widget.draw_to_svg_file(
|
||||||
|
multi, image_path..".svg", multi.forced_width, multi.forced_height
|
||||||
|
)
|
||||||
|
|
||||||
|
-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80
|
Loading…
Reference in New Issue