From f9037c8acd80734dfcefc95c8e29ea092804f089 Mon Sep 17 00:00:00 2001 From: Abhorrent_Anger Date: Tue, 29 Oct 2019 19:25:32 +0200 Subject: [PATCH] Added "Exit" functionality --- eyestrainreminder/EyeStrainReminder.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/eyestrainreminder/EyeStrainReminder.py b/eyestrainreminder/EyeStrainReminder.py index b2766de..8f5414c 100755 --- a/eyestrainreminder/EyeStrainReminder.py +++ b/eyestrainreminder/EyeStrainReminder.py @@ -8,7 +8,7 @@ import notify2 import pystray from PIL import Image from playsound import playsound -from pystray import MenuItem as item +from pystray import Menu as menu, MenuItem as item NAME = 'Eye Strain Reminder' MESSAGE = 'Friendly reminder to observe the 20-20-20 rule' @@ -29,7 +29,7 @@ def create_tray_icon(): image = get_image() icon = pystray.Icon(NAME, image, NAME, generate_menu_items()) icon.run() - + def update_icon(): global icon image = get_image() @@ -44,6 +44,8 @@ def generate_menu_items(): menu_items = [] menu_items.append(item('Mute' if not mute else 'Unmute', toggle_mute)) menu_items.append(item('Do Not Disturb' if not disable_notifs else 'Enable Notifications', toggle_notifications)) + menu_items.append(menu.SEPARATOR) + menu_items.append(item('Exit', exit)) return menu_items def toggle_mute(): @@ -57,6 +59,11 @@ def toggle_notifications(): update_menu() update_icon() +def exit(): + global icon + icon.stop() + os._exit(0) + def update_menu(): global icon icon.menu = generate_menu_items()