set_brightness() with state-saving

This commit is contained in:
Ferit Yiğit BALABAN 2022-06-12 14:34:50 +03:00
parent 5d6e668a9b
commit 15c457c3a4

View File

@ -17,8 +17,20 @@ PATH_RESC_KBDLGT = "$HOME/.config/navi/kbdlgt"
PATH_RESC_SCRLGT = "$HOME/.config/navi/scrlgt" PATH_RESC_SCRLGT = "$HOME/.config/navi/scrlgt"
VAR_KBDNAME = "asus::kbd_backlight" VAR_KBDNAME = "asus::kbd_backlight"
async def set_brightness(device: int, value: int, save_state = False): 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(): async def connect_keyboard():
@ -54,8 +66,8 @@ def get_brightness(device: int):
if device == 0: if device == 0:
cmd = ['brightnessctl'] cmd = ['brightnessctl']
elif device == 1: elif device == 1:
cmd = ['brightnessctl', ''] cmd = ['brightnessctl', '--device', VAR_KBDNAME]
return int(run(, text=True, capture_output=True).stdout.split('(')[1].split(')')[0].replace('%', '')) return int(run(cmd, text=True, capture_output=True).stdout.split('(')[1].split(')')[0].replace('%', ''))
def get_volume(): def get_volume():