mirror of
https://github.com/aclist/dztui.git
synced 2026-10-31 15:12:48 +01:00
fix: GLibUnix namespace patch from DZGUI 6
This commit is contained in:
1 parent
afcc50e8c3
commit
979e616c4f
1 file changed
+17
-2
+17
-2
@@ -32,7 +32,8 @@ if TYPE_CHECKING:
|
|||||||
import gi
|
import gi
|
||||||
|
|
||||||
gi.require_version("Gtk", "3.0")
|
gi.require_version("Gtk", "3.0")
|
||||||
from gi.repository import Gtk, GLib, Gdk, GObject, Pango # noqa E402
|
gi.require_version("GLibUnix", "2.0")
|
||||||
|
from gi.repository import Gtk, GLib, GLibUnix, Gdk, GObject, Pango # noqa E402
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
# https://bugzilla.gnome.org/show_bug.cgi?id=708676
|
# https://bugzilla.gnome.org/show_bug.cgi?id=708676
|
||||||
@@ -300,9 +301,23 @@ class App(Gtk.Application):
|
|||||||
)
|
)
|
||||||
self.win.add_accel_group(accel)
|
self.win.add_accel_group(accel)
|
||||||
|
|
||||||
GLib.unix_signal_add(GLib.PRIORITY_DEFAULT, signal.SIGINT, self._catch_sigint)
|
self.setup_signals()
|
||||||
Gtk.main()
|
Gtk.main()
|
||||||
|
|
||||||
|
def _setup_signals(self) -> None:
|
||||||
|
SIGNAL_ADD = "signal_add"
|
||||||
|
SIGNAL_ADD_FULL = "signal_add_full"
|
||||||
|
try:
|
||||||
|
if SIGNAL_ADD in dir(GLibUnix):
|
||||||
|
func = GLibUnix.signal_add
|
||||||
|
elif SIGNAL_ADD_FULL in dir(GLibUnix):
|
||||||
|
func = GLibUnix.signal_add_full
|
||||||
|
else:
|
||||||
|
func = GLib.unix_signal_add
|
||||||
|
func(GLib.PRIORITY_DEFAULT, signal.SIGINT, self._catch_sigint)
|
||||||
|
except Exception as e:
|
||||||
|
logger.critical(e)
|
||||||
|
|
||||||
def _catch_sigint(self) -> Literal[True]:
|
def _catch_sigint(self) -> Literal[True]:
|
||||||
self.win.halt_proc_and_quit()
|
self.win.halt_proc_and_quit()
|
||||||
return True
|
return True
|
||||||
|
|||||||
Reference in new issue
Block a user