Initial Commit
This commit is contained in:
parent
72b0d4b60f
commit
e0aaed8e36
1 changed files with 42 additions and 0 deletions
42
src/wallman_systray.py
Normal file
42
src/wallman_systray.py
Normal 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.")
|
Loading…
Reference in a new issue