##// END OF EJS Templates
Backport PR #13101: Add input hooks for GTK4.
Backport PR #13101: Add input hooks for GTK4.

File last commit:

r26738:21203eaf
r26738:21203eaf
Show More
gtk4.py
27 lines | 557 B | text/x-python | PythonLexer
"""
prompt_toolkit input hook for GTK 4.
"""
from gi.repository import GLib
class _InputHook:
def __init__(self, context):
self._quit = False
GLib.io_add_watch(
context.fileno(), GLib.PRIORITY_DEFAULT, GLib.IO_IN, self.quit
)
def quit(self, *args, **kwargs):
self._quit = True
return False
def run(self):
context = GLib.MainContext.default()
while not self._quit:
context.iteration(True)
def inputhook(context):
hook = _InputHook(context)
hook.run()