##// END OF EJS Templates
Remove shimmodule IPython.config Deprecated since IPython 4.0...
Remove shimmodule IPython.config Deprecated since IPython 4.0 This should not be relied upon as this was deprecated Python 3.6 was not released yet.

File last commit:

r26736:c54a223b
r27211:2c1125bc
Show More
inputhookgtk4.py
43 lines | 1.2 KiB | text/x-python | PythonLexer
"""
Enable Gtk4 to be used interactively by IPython.
"""
# -----------------------------------------------------------------------------
# Copyright (c) 2021, the IPython Development Team.
#
# Distributed under the terms of the Modified BSD License.
#
# The full license is in the file COPYING.txt, distributed with this software.
# -----------------------------------------------------------------------------
# -----------------------------------------------------------------------------
# Imports
# -----------------------------------------------------------------------------
import sys
from gi.repository import GLib
# -----------------------------------------------------------------------------
# Code
# -----------------------------------------------------------------------------
class _InputHook:
def __init__(self, context):
self._quit = False
GLib.io_add_watch(sys.stdin, 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_gtk4():
hook = _InputHook()
hook.run()
return 0