moved to personal fennel config for awesome and added qutebrowser
This commit is contained in:
parent
403cb92b7d
commit
688748f8a6
502 changed files with 8576 additions and 9597 deletions
140
awes2/widget/brightness/brightness-slider.lua
Normal file
140
awes2/widget/brightness/brightness-slider.lua
Normal file
|
@ -0,0 +1,140 @@
|
|||
local wibox = require('wibox')
|
||||
local gears = require('gears')
|
||||
local awful = require('awful')
|
||||
local beautiful = require('beautiful')
|
||||
|
||||
local spawn = awful.spawn
|
||||
|
||||
local dpi = beautiful.xresources.apply_dpi
|
||||
|
||||
local icons = require('theme.icons')
|
||||
|
||||
local slider = wibox.widget {
|
||||
nil,
|
||||
{
|
||||
id = 'brightness_slider',
|
||||
bar_shape = gears.shape.rounded_rect,
|
||||
bar_height = dpi(2),
|
||||
bar_color = '#ffffff20',
|
||||
bar_active_color = '#f2f2f2EE',
|
||||
handle_color = '#ffffff',
|
||||
handle_shape = gears.shape.circle,
|
||||
handle_width = dpi(15),
|
||||
handle_border_color = '#00000012',
|
||||
handle_border_width = dpi(1),
|
||||
maximum = 100,
|
||||
widget = wibox.widget.slider,
|
||||
},
|
||||
nil,
|
||||
expand = 'none',
|
||||
layout = wibox.layout.align.vertical
|
||||
}
|
||||
|
||||
|
||||
local brightness_slider = slider.brightness_slider
|
||||
|
||||
brightness_slider:connect_signal(
|
||||
'property::value',
|
||||
function()
|
||||
|
||||
local brightness_level = brightness_slider:get_value()
|
||||
|
||||
spawn('brightnessctl s ' ..
|
||||
math.max(brightness_level, 5),
|
||||
false
|
||||
)
|
||||
|
||||
-- Update brightness osd
|
||||
awesome.emit_signal(
|
||||
'module::brightness_osd',
|
||||
brightness_level
|
||||
)
|
||||
end
|
||||
)
|
||||
|
||||
brightness_slider:buttons(
|
||||
gears.table.join(
|
||||
awful.button(
|
||||
{},
|
||||
4,
|
||||
nil,
|
||||
function()
|
||||
if brightness_slider:get_value() > 100 then
|
||||
brightness_slider:set_value(100)
|
||||
return
|
||||
end
|
||||
brightness_slider:set_value(brightness_slider:get_value() + 5)
|
||||
end
|
||||
),
|
||||
awful.button(
|
||||
{},
|
||||
5,
|
||||
nil,
|
||||
function()
|
||||
if brightness_slider:get_value() < 0 then
|
||||
brightness_slider:set_value(0)
|
||||
return
|
||||
end
|
||||
brightness_slider:set_value(brightness_slider:get_value() - 5)
|
||||
end
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
local update_slider = function()
|
||||
awful.spawn.easy_async_with_shell(
|
||||
"brightnessctl g",
|
||||
function(stdout)
|
||||
|
||||
local brightness = string.match(stdout, '(%d+)')
|
||||
|
||||
brightness_slider:set_value(tonumber(stdout) / 75)
|
||||
end
|
||||
)
|
||||
end
|
||||
|
||||
-- Update on startup
|
||||
update_slider()
|
||||
|
||||
-- The emit will come from the global keybind
|
||||
awesome.connect_signal(
|
||||
'widget::brightness',
|
||||
function()
|
||||
update_slider()
|
||||
end
|
||||
)
|
||||
|
||||
-- The emit will come from the OSD
|
||||
awesome.connect_signal(
|
||||
'widget::brightness:update',
|
||||
function(value)
|
||||
brightness_slider:set_value(tonumber(value))
|
||||
end
|
||||
)
|
||||
|
||||
|
||||
local brightness_setting = wibox.widget {
|
||||
{
|
||||
{
|
||||
{
|
||||
image = icons.brightness,
|
||||
resize = true,
|
||||
widget = wibox.widget.imagebox
|
||||
},
|
||||
top = dpi(12),
|
||||
bottom = dpi(12),
|
||||
widget = wibox.container.margin
|
||||
},
|
||||
slider,
|
||||
spacing = dpi(24),
|
||||
layout = wibox.layout.fixed.horizontal
|
||||
|
||||
},
|
||||
left = dpi(24),
|
||||
right = dpi(24),
|
||||
forced_height = dpi(48),
|
||||
widget = wibox.container.margin
|
||||
}
|
||||
|
||||
return brightness_setting
|
Loading…
Add table
Add a link
Reference in a new issue