From 15c457c3a48440d6899de13687e98376b556987c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ferit=20Yi=C4=9Fit=20BALABAN?= Date: Sun, 12 Jun 2022 14:34:50 +0300 Subject: [PATCH] set_brightness() with state-saving --- modeset2.py | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/modeset2.py b/modeset2.py index 7ca55ee..2e32b00 100755 --- a/modeset2.py +++ b/modeset2.py @@ -17,8 +17,20 @@ PATH_RESC_KBDLGT = "$HOME/.config/navi/kbdlgt" PATH_RESC_SCRLGT = "$HOME/.config/navi/scrlgt" VAR_KBDNAME = "asus::kbd_backlight" + async def set_brightness(device: int, value: int, save_state = False): - return None + state_kbdlgt = get_brightness(1) + state_scrlgt = get_brightness(0) + if value == -1: + with open(os.path.expandvars(PATH_RESC_SCRLGT if device == 0 else PATH_RESC_KBDLGT), 'r') as f: + value = int(f.read()) + f.close() + command = f"brightnessctl set {value}%" if device == 0 else f"brightnessctl --device {VAR_KBDNAME} set {value}%" + await open_subprocess(command) + if save_state: + with open(os.path.expandvars(PATH_RESC_SCRLGT if device == 0 else PATH_RESC_KBDLGT), 'w') as f: + f.write(str(state_scrlgt if device == 0 else state_kbdlgt)) + f.close() async def connect_keyboard(): @@ -54,8 +66,8 @@ def get_brightness(device: int): if device == 0: cmd = ['brightnessctl'] elif device == 1: - cmd = ['brightnessctl', ''] - return int(run(, text=True, capture_output=True).stdout.split('(')[1].split(')')[0].replace('%', '')) + cmd = ['brightnessctl', '--device', VAR_KBDNAME] + return int(run(cmd, text=True, capture_output=True).stdout.split('(')[1].split(')')[0].replace('%', '')) def get_volume():