diff --git a/src/twisted/internet/gireactor.py b/src/twisted/internet/gireactor.py index 92596db1da2..a577825a87e 100644 --- a/src/twisted/internet/gireactor.py +++ b/src/twisted/internet/gireactor.py @@ -24,6 +24,7 @@ from twisted.internet.error import ReactorAlreadyRunning from twisted.internet import _glibbase from twisted.python import runtime +import gi import gi.pygtkcompat from gi.repository import GLib @@ -68,6 +69,7 @@ class GIReactor(_glibbase.GlibReactorBase): def __init__(self, useGtk=False): _gtk = None if useGtk is True: + gi.require_version("Gtk", "3.0") from gi.repository import Gtk as _gtk _glibbase.GlibReactorBase.__init__(self, GLib, _gtk, useGtk=useGtk) @@ -112,6 +114,7 @@ class PortableGIReactor(_glibbase.PortableGlibReactorBase): def __init__(self, useGtk=False): _gtk = None if useGtk is True: + gi.require_version("Gtk", "3.0") from gi.repository import Gtk as _gtk _glibbase.PortableGlibReactorBase.__init__(self, GLib, _gtk, useGtk=useGtk) diff --git a/src/twisted/internet/test/test_gireactor.py b/src/twisted/internet/test/test_gireactor.py index d15a9262248..af5092a3614 100644 --- a/src/twisted/internet/test/test_gireactor.py +++ b/src/twisted/internet/test/test_gireactor.py @@ -25,6 +25,9 @@ gtk3reactor = None else: gtk3reactor = _gtk3reactor + import gi # type: ignore[import] + + gi.require_version("Gtk", "3.0") from gi.repository import Gtk from twisted.internet.error import ReactorAlreadyRunning