volume: added mute support

If a channel is muted we return 0. Something like "Muted" would be
nice, but lets not break progressbars. If it doesn't concern you, then
return what ever you want...
This commit is contained in:
Adrian C. (anrxc) 2009-10-02 21:48:05 +02:00
parent ddf9646b5e
commit 9d518b83a9
2 changed files with 9 additions and 5 deletions

View File

@ -18,7 +18,7 @@ local function worker(format, thermal_zone)
-- Get an ACPI thermal zone
local f = io.open("/proc/acpi/thermal_zone/" .. thermal_zone .. "/temperature")
-- Fix your ACPI setup, or find another source of temperature
-- exposed trough /sys, if a thermal_zone can't be found.
-- exposed trough /sys, if a thermal_zone can't be found
if not f then return {"N/A"} end
local line = f:read("*line")
f:close()

View File

@ -6,7 +6,10 @@
-- {{{ Grab environment
local io = { popen = io.popen }
local setmetatable = setmetatable
local string = { match = string.match }
local string = {
find = string.find,
match = string.match
}
-- }}}
@ -22,9 +25,10 @@ local function worker(format, channel)
f:close()
local volume_level = string.match(mixer, "([%d]?[%d]?[%d])%%")
-- Don't break progressbars
if volume_level == nil then return {0} end
-- If muted return 0 (not "Mute") so we dont break progressbars
if string.find(mixer, "%[off%]") or volume_level == nil then
volume_level = 0
end
return {volume_level}
end