Backlight fixes
This commit is contained in:
		| @ -35,8 +35,13 @@ config.screenshot = { enabled = true } | ||||
| config.simple_widgets = { enabled = true } | ||||
| config.keymap_popup = { enabled = true } | ||||
| config.battery = { enabled = false } | ||||
| config.backlight = { enabled = false } | ||||
| config.picom = { enabled = true } | ||||
| config.backlight = { | ||||
| 	enabled = false, | ||||
| 	button_step = 5, | ||||
| 	scroll_step = 5, | ||||
| 	backend = "xbacklight" | ||||
| } | ||||
|  | ||||
| config.core = { | ||||
| 	-- Icon to use when a window doesn't provide one | ||||
|  | ||||
| @ -129,6 +129,10 @@ return function(s) | ||||
| 	awesome.connect_signal("module::backlight:update", | ||||
| 		function(value) | ||||
|  | ||||
| 			if value == nil then | ||||
| 				value = 0 | ||||
| 			end | ||||
|  | ||||
| 			-- Update slider | ||||
| 			widget. | ||||
| 				container. | ||||
|  | ||||
| @ -1,6 +1,69 @@ | ||||
| local backlight = {} | ||||
| local brightnessctl = {} | ||||
| brightnessctl.parse = function(s) | ||||
| 	local batpec = string.match(s, ",%d?%d?%d%%,") | ||||
| 	batpec = batpec:sub(2, batpec:len() - 2) | ||||
| 	return tonumber(batpec) | ||||
| end | ||||
|  | ||||
| backlight.get = function(callback) | ||||
| brightnessctl.get = function(callback) | ||||
| 	awful.spawn.easy_async( | ||||
| 		"brightnessctl info -m", | ||||
| 		function(stdout, stderr, exitreason, exitcode) | ||||
| 			callback(brightnessctl.parse(stdout)) | ||||
| 		end | ||||
| 	) | ||||
| end | ||||
|  | ||||
| brightnessctl.set = function(value) | ||||
| 	awful.spawn.easy_async( | ||||
| 		"brightnessctl set " .. value .. "% -m", | ||||
| 		function(stdout, stderr, exitreason, exitcode) | ||||
| 			awesome.emit_signal( | ||||
| 				"module::backlight:update", | ||||
| 				brightnessctl.parse(stdout) | ||||
| 			) | ||||
| 		end | ||||
| 	) | ||||
| end | ||||
|  | ||||
| brightnessctl.watch = function(timeout, callback, widget) | ||||
| 	awful.widget.watch( | ||||
| 		"brightnessctl get -m", | ||||
| 		timeout, | ||||
| 		function(stdout, stderr, exitreason, exitcode) | ||||
| 			callback(brightnessctl.parse(stdout)) | ||||
| 		end, | ||||
| 		widget | ||||
| 	) | ||||
| end | ||||
|  | ||||
| brightnessctl.backlight_up = function(value) | ||||
| 	awful.spawn.easy_async( | ||||
| 		"brightnessctl set " .. value .. "%+ -m", | ||||
| 		function(stdout, stderr, exitreason, exitcode) | ||||
| 			awesome.emit_signal( | ||||
| 				"module::backlight:update", | ||||
| 				brightnessctl.parse(stdout) | ||||
| 			) | ||||
| 		end | ||||
| 	) | ||||
| end | ||||
|  | ||||
| brightnessctl.backlight_down = function(value) | ||||
| 	awful.spawn.easy_async( | ||||
| 		"brightnessctl set " .. value .. "%- -m", | ||||
| 		function(stdout, stderr, exitreason, exitcode) | ||||
| 			awesome.emit_signal( | ||||
| 				"module::backlight:update", | ||||
| 				brightnessctl.parse(stdout) | ||||
| 			) | ||||
| 		end | ||||
| 	) | ||||
| end | ||||
|  | ||||
|  | ||||
| local xbacklight = {} | ||||
| xbacklight.get = function(callback) | ||||
| 	awful.spawn.easy_async( | ||||
| 		"xbacklight -get", | ||||
| 		function(stdout, stderr, exitreason, exitcode) | ||||
| @ -9,11 +72,11 @@ backlight.get = function(callback) | ||||
| 	) | ||||
| end | ||||
|  | ||||
| backlight.set = function(value) | ||||
| xbacklight.set = function(value) | ||||
| 	awful.spawn("xbacklight -set " .. value, false) | ||||
| end | ||||
|  | ||||
| backlight.watch = function(timeout, callback, widget) | ||||
| xbacklight.watch = function(timeout, callback, widget) | ||||
| 	awful.widget.watch( | ||||
| 		"xbacklight -get", | ||||
| 		timeout, | ||||
| @ -23,7 +86,7 @@ backlight.watch = function(timeout, callback, widget) | ||||
| end | ||||
|  | ||||
|  | ||||
| backlight.backlight_up = function(value) | ||||
| xbacklight.backlight_up = function(value) | ||||
| 	awful.spawn.easy_async( | ||||
| 		"xbacklight -inc " .. value, | ||||
| 		function(stdout, stderr, exitreason, exitcode) | ||||
| @ -32,7 +95,7 @@ backlight.backlight_up = function(value) | ||||
| 	) | ||||
| end | ||||
|  | ||||
| backlight.backlight_down = function(value) | ||||
| xbacklight.backlight_down = function(value) | ||||
| 	awful.spawn.easy_async( | ||||
| 		"xbacklight -dec " .. value, | ||||
| 		function(stdout, stderr, exitreason, exitcode) | ||||
| @ -41,6 +104,18 @@ backlight.backlight_down = function(value) | ||||
| 	) | ||||
| end | ||||
|  | ||||
|  | ||||
| local backlight = {} | ||||
| if config.backlight.backend == "xbacklight" then | ||||
| 	backlight = xbacklight | ||||
| elseif  config.backlight.backend == "brightnessctl" then | ||||
| 	backlight = brightnessctl | ||||
| else | ||||
| 	backlight = xbacklight | ||||
| end | ||||
|  | ||||
|  | ||||
|  | ||||
| awesome.connect_signal("module::backlight:update_read", | ||||
| 	function() | ||||
| 		backlight.get( | ||||
|  | ||||
		Reference in New Issue
	
	Block a user