mirror of https://github.com/lcpz/lain.git
{alsa,pulse}bar: added margins/paddings args
This commit is contained in:
parent
be69daf964
commit
f58970997e
|
@ -6,15 +6,12 @@
|
||||||
|
|
||||||
--]]
|
--]]
|
||||||
|
|
||||||
local helpers = require("lain.helpers")
|
local helpers = require("lain.helpers")
|
||||||
local awful = require("awful")
|
local awful = require("awful")
|
||||||
local naughty = require("naughty")
|
local naughty = require("naughty")
|
||||||
local wibox = require("wibox")
|
local wibox = require("wibox")
|
||||||
local math = { modf = math.modf }
|
|
||||||
local string = { format = string.format,
|
local math, string, type, tonumber = math, string, type, tonumber
|
||||||
match = string.match,
|
|
||||||
rep = string.rep }
|
|
||||||
local type, tonumber = type, tonumber
|
|
||||||
|
|
||||||
-- ALSA volume bar
|
-- ALSA volume bar
|
||||||
-- lain.widget.alsabar
|
-- lain.widget.alsabar
|
||||||
|
@ -40,7 +37,6 @@ local function factory(args)
|
||||||
local paddings = args.paddings or 1
|
local paddings = args.paddings or 1
|
||||||
local ticks = args.ticks or false
|
local ticks = args.ticks or false
|
||||||
local ticks_size = args.ticks_size or 7
|
local ticks_size = args.ticks_size or 7
|
||||||
local step = args.step or '5%'
|
|
||||||
|
|
||||||
alsabar.cmd = args.cmd or "amixer"
|
alsabar.cmd = args.cmd or "amixer"
|
||||||
alsabar.channel = args.channel or "Master"
|
alsabar.channel = args.channel or "Master"
|
||||||
|
@ -54,23 +50,20 @@ local function factory(args)
|
||||||
alsabar.notification_preset.font = "Monospace 10"
|
alsabar.notification_preset.font = "Monospace 10"
|
||||||
end
|
end
|
||||||
|
|
||||||
local format_get_cmd = string.format("%s get %s", alsabar.cmd, alsabar.channel)
|
local format_cmd = string.format("%s get %s", alsabar.cmd, alsabar.channel)
|
||||||
local format_inc_cmd = string.format("%s sset %s %s+", alsabar.cmd, alsabar.channel, step)
|
|
||||||
local format_dec_cmd = string.format("%s sset %s %s-" , alsabar.cmd, alsabar.channel, step)
|
|
||||||
local format_tog_cmd = string.format("%s sset %s toggle", alsabar.cmd, alsabar.channel)
|
|
||||||
|
|
||||||
if alsabar.togglechannel then
|
if alsabar.togglechannel then
|
||||||
format_get_cmd = { awful.util.shell, "-c", string.format("%s get %s; %s get %s",
|
format_cmd = { awful.util.shell, "-c", string.format("%s get %s; %s get %s",
|
||||||
alsabar.cmd, alsabar.channel, alsabar.cmd, alsabar.togglechannel) }
|
alsabar.cmd, alsabar.channel, alsabar.cmd, alsabar.togglechannel) }
|
||||||
end
|
end
|
||||||
|
|
||||||
alsabar.bar = wibox.widget {
|
alsabar.bar = wibox.widget {
|
||||||
forced_height = height,
|
|
||||||
forced_width = width,
|
|
||||||
color = alsabar.colors.unmute,
|
color = alsabar.colors.unmute,
|
||||||
background_color = alsabar.colors.background,
|
background_color = alsabar.colors.background,
|
||||||
|
forced_height = height,
|
||||||
|
forced_width = width,
|
||||||
margins = margins,
|
margins = margins,
|
||||||
paddings = paddings,
|
paddings = margins,
|
||||||
ticks = ticks,
|
ticks = ticks,
|
||||||
ticks_size = ticks_size,
|
ticks_size = ticks_size,
|
||||||
widget = wibox.widget.progressbar
|
widget = wibox.widget.progressbar
|
||||||
|
@ -79,7 +72,7 @@ local function factory(args)
|
||||||
alsabar.tooltip = awful.tooltip({ objects = { alsabar.bar } })
|
alsabar.tooltip = awful.tooltip({ objects = { alsabar.bar } })
|
||||||
|
|
||||||
function alsabar.update(callback)
|
function alsabar.update(callback)
|
||||||
helpers.async(format_get_cmd, function(mixer)
|
helpers.async(format_cmd, function(mixer)
|
||||||
local vol, playback = string.match(mixer, "([%d]+)%%.*%[([%l]*)")
|
local vol, playback = string.match(mixer, "([%d]+)%%.*%[([%l]*)")
|
||||||
|
|
||||||
if not vol or not playback then return end
|
if not vol or not playback then return end
|
||||||
|
@ -152,14 +145,6 @@ local function factory(args)
|
||||||
|
|
||||||
helpers.newtimer(string.format("alsabar-%s-%s", alsabar.cmd, alsabar.channel), timeout, alsabar.update)
|
helpers.newtimer(string.format("alsabar-%s-%s", alsabar.cmd, alsabar.channel), timeout, alsabar.update)
|
||||||
|
|
||||||
alsabar.bar:connect_signal("button::press", function(_,_,_,button)
|
|
||||||
if (button == 4) then awful.spawn(format_inc_cmd)
|
|
||||||
elseif (button == 5) then awful.spawn(format_dec_cmd)
|
|
||||||
elseif (button == 1) then awful.spawn(format_tog_cmd)
|
|
||||||
end
|
|
||||||
alsabar.update()
|
|
||||||
end)
|
|
||||||
|
|
||||||
return alsabar
|
return alsabar
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -6,16 +6,12 @@
|
||||||
|
|
||||||
--]]
|
--]]
|
||||||
|
|
||||||
local helpers = require("lain.helpers")
|
local helpers = require("lain.helpers")
|
||||||
local awful = require("awful")
|
local awful = require("awful")
|
||||||
local naughty = require("naughty")
|
local naughty = require("naughty")
|
||||||
local wibox = require("wibox")
|
local wibox = require("wibox")
|
||||||
local math = { modf = math.modf }
|
|
||||||
local string = { format = string.format,
|
local math, string, type, tonumber = math, string, type, tonumber
|
||||||
match = string.match,
|
|
||||||
gmatch = string.gmatch,
|
|
||||||
rep = string.rep }
|
|
||||||
local type, tonumber = type, tonumber
|
|
||||||
|
|
||||||
-- PulseAudio volume bar
|
-- PulseAudio volume bar
|
||||||
-- lain.widget.pulsebar
|
-- lain.widget.pulsebar
|
||||||
|
@ -37,7 +33,9 @@ local function factory(args)
|
||||||
local timeout = args.timeout or 5
|
local timeout = args.timeout or 5
|
||||||
local settings = args.settings or function() end
|
local settings = args.settings or function() end
|
||||||
local width = args.width or 63
|
local width = args.width or 63
|
||||||
local height = args.heigth or 1
|
local height = args.height or 1
|
||||||
|
local margins = args.margins or 1
|
||||||
|
local paddings = args.paddings or 1
|
||||||
local ticks = args.ticks or false
|
local ticks = args.ticks or false
|
||||||
local ticks_size = args.ticks_size or 7
|
local ticks_size = args.ticks_size or 7
|
||||||
|
|
||||||
|
@ -54,12 +52,12 @@ local function factory(args)
|
||||||
end
|
end
|
||||||
|
|
||||||
pulsebar.bar = wibox.widget {
|
pulsebar.bar = wibox.widget {
|
||||||
forced_height = height,
|
|
||||||
forced_width = width,
|
|
||||||
color = pulsebar.colors.unmute,
|
color = pulsebar.colors.unmute,
|
||||||
background_color = pulsebar.colors.background,
|
background_color = pulsebar.colors.background,
|
||||||
margins = 1,
|
forced_height = height,
|
||||||
paddings = 1,
|
forced_width = width,
|
||||||
|
margins = margins,
|
||||||
|
paddings = margins,
|
||||||
ticks = ticks,
|
ticks = ticks,
|
||||||
ticks_size = ticks_size,
|
ticks_size = ticks_size,
|
||||||
widget = wibox.widget.progressbar,
|
widget = wibox.widget.progressbar,
|
||||||
|
|
2
wiki
2
wiki
|
@ -1 +1 @@
|
||||||
Subproject commit 1acb69eb3cf431b9102978c6117144980e8a2939
|
Subproject commit e6118121ad7e2c2a6d7a846e1ffc3762a42d5fe1
|
Loading…
Reference in New Issue