47 lines
1.4 KiB
Python
Executable File
47 lines
1.4 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
import sys
|
|
import subprocess
|
|
import os
|
|
|
|
|
|
def tag_window(tag:str):
|
|
"""
|
|
Tags the currently focused window with the specified tag.
|
|
"""
|
|
command = f"hyprctl dispatch tagwindow {tag}"
|
|
subprocess.run(command, shell=True)
|
|
|
|
|
|
def notify(message: str):
|
|
"""
|
|
Displays a notification with the specified message.
|
|
"""
|
|
command = f'hyprctl notify 1 1000 0 "{message}"';
|
|
subprocess.run(command, shell=True)
|
|
|
|
if __name__ == "__main__":
|
|
if len(sys.argv) < 2:
|
|
print("Usage: python3 opacity.py <opacity_value>")
|
|
sys.exit(1)
|
|
|
|
opacity_value = sys.argv[1]
|
|
# Validate the opacity value
|
|
valid_opacities = ['0.1', '0.2', '0.3', '0.4', '0.5', '0.6', '0.7', '0.8', '0.9', '1']
|
|
if opacity_value not in valid_opacities and opacity_value != '-1':
|
|
print(f"Invalid opacity value: {opacity_value}. Valid values are: {', '.join(valid_opacities)}")
|
|
sys.exit(1)
|
|
|
|
|
|
# If the opacity value is -1, reset to default
|
|
if opacity_value == '-1':
|
|
notify("Resetting opacity to default")
|
|
|
|
for op in valid_opacities:
|
|
tag_window(f'-- -opacity:{op}')
|
|
else:
|
|
notify(f"Setting opacity to {opacity_value}")
|
|
for op in valid_opacities:
|
|
if op == opacity_value:
|
|
tag_window(f'opacity:{op}')
|
|
else:
|
|
tag_window(f'-- -opacity:{op}') |