import power menu
This commit is contained in:
parent
7eeb920ca1
commit
e572e841d8
68
init.lua
Normal file
68
init.lua
Normal file
@ -0,0 +1,68 @@
|
||||
local awful = require "awful"
|
||||
local wibox = require("wibox")
|
||||
local gears = require("gears")
|
||||
local beautiful = require("beautiful")
|
||||
local powermenu = {
|
||||
buttonsize = 128,
|
||||
spacing = 5,
|
||||
iconPath = gears.filesystem.get_configuration_dir() .. "/powermenu/",
|
||||
lock = function()
|
||||
error("Lock requested, but no function specified")
|
||||
end,
|
||||
suspend = function()
|
||||
error("Suspend requested, but no function specified")
|
||||
end,
|
||||
poweroff = function()
|
||||
error("Power off requested, but no function specified")
|
||||
end,
|
||||
}
|
||||
|
||||
function powermenu.new()
|
||||
local powermenuWidget = wibox.widget{
|
||||
layout = wibox.layout.grid.vertical(2),
|
||||
spacing = powermenu.spacing,
|
||||
}
|
||||
local powermenuPopup = awful.popup{
|
||||
layout = wibox.layout.fixed.vertical,
|
||||
-- widget = wibox.container.constraint(powermenuWidget, "min", 512, 512),
|
||||
widget = powermenuWidget,
|
||||
border_color = beautiful.border_focus,
|
||||
border_width = 2,
|
||||
ontop = true,
|
||||
placement = awful.placement.centered,
|
||||
visible = false,
|
||||
}
|
||||
local function addButton(icon, fn)
|
||||
local newButton = awful.widget.button{
|
||||
image = powermenu.iconPath .. "/" .. icon
|
||||
}
|
||||
newButton:set_forced_width(powermenu.buttonsize)
|
||||
newButton:set_forced_height(powermenu.buttonsize)
|
||||
newButton:buttons(gears.table.join(
|
||||
newButton:buttons(),
|
||||
awful.button({}, 1, nil, function()
|
||||
fn()
|
||||
powermenuPopup:hide()
|
||||
end)
|
||||
))
|
||||
|
||||
powermenuWidget:add(newButton)
|
||||
end
|
||||
addButton("poweroff.png", powermenu.poweroff)
|
||||
addButton("suspend.png", powermenu.suspend)
|
||||
addButton("restart.png", awesome.restart)
|
||||
addButton("lock.png", powermenu.lock)
|
||||
|
||||
function powermenuPopup.show(self)
|
||||
self.visible = true
|
||||
end
|
||||
function powermenuPopup.hide(self)
|
||||
self.visible = false
|
||||
end
|
||||
function powermenuPopup.toggle(self)
|
||||
self.visible = not self.visible
|
||||
end
|
||||
return powermenuPopup
|
||||
end
|
||||
|
||||
return powermenu
|
BIN
poweroff.png
Normal file
BIN
poweroff.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 9.4 KiB |
BIN
restart.png
Normal file
BIN
restart.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 9.9 KiB |
BIN
suspend.png
Normal file
BIN
suspend.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 10 KiB |
Loading…
Reference in New Issue
Block a user