From 8378530a451da222b6bbef8f69ca43223f70c674 Mon Sep 17 00:00:00 2001 From: Benoit Pierre Date: Sat, 18 Nov 2017 15:51:16 -0500 Subject: [PATCH] Quit engine when quitting QCoreApplication to prevent Mac freeze --- plover/gui_qt/main.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/plover/gui_qt/main.py b/plover/gui_qt/main.py index f51cb33a9..d29b775bc 100644 --- a/plover/gui_qt/main.py +++ b/plover/gui_qt/main.py @@ -49,6 +49,9 @@ def __init__(self, config, use_qt_notifications): QApplication.setQuitOnLastWindowClosed(False) self._app.engine = self._engine = Engine(config, KeyboardEmulation()) + # On macOS, quitting through the dock will result + # in a direct call to `QCoreApplication.quit`. + self._app.aboutToQuit.connect(self._app.engine.quit) signal.signal(signal.SIGINT, lambda signum, stack: self._engine.quit())