Quit GUI via SysTray instead of sys.exit to cleanly terminate server

This commit is contained in:
Debanjum Singh Solanky
2022-08-08 23:49:26 +03:00
parent e5691f9d1d
commit 80fa9fde6a

View File

@@ -28,7 +28,7 @@ def run():
# Setup GUI
gui = QtWidgets.QApplication([])
gui.setQuitOnLastWindowClosed(False)
tray = create_system_tray()
tray = create_system_tray(gui)
window = ConfigureWindow()
# Start Application Server
@@ -102,7 +102,7 @@ class ConfigureWindow(QtWidgets.QMainWindow):
self.config_window.layout().removeWidget(self.config_window.layout().itemAt(2).widget())
def create_system_tray():
def create_system_tray(gui: QtWidgets.QApplication):
"""Create System Tray with Menu
Menu Actions should contain
1. option to open search page at localhost:8000/
@@ -121,7 +121,7 @@ def create_system_tray():
menu_actions = [
('Search', lambda: webbrowser.open('http://localhost:8000/')),
('Configure', lambda: webbrowser.open('http://localhost:8000/config')),
('Quit', sys.exit),
('Quit', gui.quit),
]
# Add the menu actions to the menu