Initial Commit

This commit is contained in:
Emma Nora Theuer 2024-09-01 19:27:34 +02:00
parent 72b0d4b60f
commit e0aaed8e36

42
src/wallman_systray.py Normal file
View file

@ -0,0 +1,42 @@
from os import getenv, chdir
import logging
# Use logger that is also in wallman_lib
logger = logging.getLogger("wallman")
try:
from PIL import Image
except ImportError:
logging.error("Couldn't import PIL, wallman will launch without a systray.")
print("Couldn't import PIL, wallman will launch without a systray.")
raise
try:
from pystray import Icon, MenuItem as item, Menu
except ImportError:
logging.error("Couldn't import pystray, wallman will launch without a systray.")
print("Couldn't import pystray, wallman will launch without a systray.")
raise
# This should always be ran with "set_wallpaper_by_time" as input!
def set_wallpaper_again(icon, item, callback):
logging.info("Re-Setting wallpaper due to systray input.")
callback()
def reroll_wallpapers(icon, item, first_callback, second_callback):
logging.info("Rerolling Wallpaper sets and resetting wallpaper due to systray input")
first_callback()
second_callback()
# This should always be ran with "scheduler.shutdown" as input!
def on_quit(icon, item, callback):
logging.info("Shutting down wallman due to systray input.")
callback()
icon.stop()
chdir(str(getenv("HOME")) + "/.config/wallman/")
try:
icon_image = Image.open("systrayIcon.jpg")
except FileNotFoundError:
logger.error("~/.config/wallman/systrayIcon.jpg has not been found, wallman will launch without a systray.")
print("~/.config/wallman/systrayIcon.jpg has not been found, wallman will launch without a systray.")