Update volume widget for awesome 3.5
This commit is contained in:
parent
145074b38c
commit
e975b5cfff
42
volume.lua
42
volume.lua
@ -1,10 +1,10 @@
|
||||
local awful = awful
|
||||
local beautiful = beautiful
|
||||
local widget = widget
|
||||
local awful = require("awful")
|
||||
local wibox = require("wibox")
|
||||
local beautiful = require("beautiful")
|
||||
|
||||
local timer = timer
|
||||
local string = string
|
||||
local tonumber = tonumber
|
||||
local image = image
|
||||
local os = {
|
||||
getenv = os.getenv,
|
||||
execute = os.execute
|
||||
@ -16,11 +16,10 @@ local io = {
|
||||
local table = {
|
||||
insert = table.insert
|
||||
}
|
||||
module("iniquitous.volume")
|
||||
local volume_widget = {}
|
||||
|
||||
local img = widget({ type = "imagebox" })
|
||||
local tb = widget({ type = "textbox" })
|
||||
tb.text = "N/A%"
|
||||
local img = nil
|
||||
local tb = nil
|
||||
|
||||
local initialized = false
|
||||
|
||||
@ -37,7 +36,10 @@ local value = nil
|
||||
|
||||
local vol = 0
|
||||
|
||||
function init(a_mode, a_channel)
|
||||
function volume_widget.init(a_mode, a_channel)
|
||||
img = wibox.widget.imagebox()
|
||||
tb = wibox.widget.textbox("N/A%")
|
||||
|
||||
mode = a_mode
|
||||
channel = a_channel
|
||||
|
||||
@ -59,23 +61,23 @@ function init(a_mode, a_channel)
|
||||
|
||||
initialized = true
|
||||
end
|
||||
volume(display)
|
||||
volume_widget.volume(display)
|
||||
|
||||
local but = awful.util.table.join(
|
||||
awful.button({ }, 3, function () volume("mute") end),
|
||||
awful.button({ }, 4, function () volume("up") end),
|
||||
awful.button({ }, 5, function () volume("down") end)
|
||||
awful.button({ }, 3, function () volume_widget.volume("mute") end),
|
||||
awful.button({ }, 4, function () volume_widget.volume("up") end),
|
||||
awful.button({ }, 5, function () volume_widget.volume("down") end)
|
||||
)
|
||||
tb:buttons(but)
|
||||
img:buttons(but)
|
||||
|
||||
local timer = timer { timeout = 7 }
|
||||
timer:add_signal("timeout", function() volume("display") end)
|
||||
timer:connect_signal("timeout", function() volume_widget.volume("display") end)
|
||||
timer:start()
|
||||
end
|
||||
|
||||
|
||||
function volume(mode)
|
||||
function volume_widget.volume(mode)
|
||||
if mode == "up" then
|
||||
os.execute(up .. " >/dev/null")
|
||||
elseif mode == "down" then
|
||||
@ -113,13 +115,15 @@ function display(volume)
|
||||
else
|
||||
vol_lvl = "high"
|
||||
end
|
||||
img.image = image(beautiful["vol_" .. vol_lvl])
|
||||
tb.text = volume .."%"
|
||||
img:set_image(beautiful["vol_" .. vol_lvl])
|
||||
tb:set_text(volume .."%")
|
||||
end
|
||||
|
||||
function textbox()
|
||||
function volume_widget.textbox()
|
||||
return tb
|
||||
end
|
||||
function imagebox()
|
||||
function volume_widget.imagebox()
|
||||
return img
|
||||
end
|
||||
|
||||
return volume_widget
|
||||
|
Loading…
x
Reference in New Issue
Block a user