ba466d5179
Use xbacklight to increase or decrease brightness when the user uses the mouse wheel over the brightness widget.
33 lines
1.2 KiB
Python
33 lines
1.2 KiB
Python
import bumblebee.module
|
|
|
|
def description():
|
|
return "Displays brightness percentage"
|
|
|
|
def parameters():
|
|
return [
|
|
"brightness.step: Steps (in percent) to increase/decrease brightness on scroll (defaults to 2)",
|
|
]
|
|
|
|
class Module(bumblebee.module.Module):
|
|
def __init__(self, output, config, alias):
|
|
super(Module, self).__init__(output, config, alias)
|
|
self._brightness = 0
|
|
self._max = 0
|
|
self._percent = 0
|
|
|
|
step = self._config.parameter("step", 2)
|
|
|
|
output.add_callback(module=self.instance(), button=4, cmd="xbacklight +{}%".format(step))
|
|
output.add_callback(module=self.instance(), button=5, cmd="xbacklight -{}%".format(step))
|
|
|
|
def widgets(self):
|
|
with open("/sys/class/backlight/intel_backlight/brightness") as f:
|
|
self._brightness = int(f.read())
|
|
with open("/sys/class/backlight/intel_backlight/max_brightness") as f:
|
|
self._max = int(f.read())
|
|
self._brightness = self._brightness if self._brightness < self._max else self._max
|
|
self._percent = int(round(self._brightness * 100 / self._max))
|
|
|
|
return bumblebee.output.Widget(self, "{:02d}%".format(self._percent))
|
|
|
|
# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4
|