roundabout,
created on Saturday, 30 November 2024, 19:16:36 (1732994196),
received on Thursday, 12 December 2024, 14:59:12 (1734015552)
Author identity: vlad <vlad.muntoiu@gmail.com>
21fb3e3ddb38920dcadf63af227066225fc56ed7
main.py
@@ -97,10 +97,12 @@ class Izvor:
SYSTEM_PROVIDER_CONFIGS = SYSTEM_CONFIGS / "providers"
def __init__(self):
gbulb.install(gtk=True)
self.loop = asyncio.get_event_loop()
self.builder = Gtk.Builder()
self.builder.add_from_file("izvor.ui")
self.window = self.builder.get_object("root")
self.window.connect("destroy", Gtk.main_quit)
self.window.connect("destroy", self.kill)
self.window.connect("key-press-event", self.check_escape)
if not os.getenv("XDG_DATA_HOME"):
@@ -154,6 +156,7 @@ class Izvor:
def execute_result(widget, row):
row.execute()
self.kill()
self.builder.connect_signals(
{
@@ -162,9 +165,13 @@ class Izvor:
}
)
def kill(self, widget=None):
self.loop.stop()
self.window.destroy()
def check_escape(self, widget, event):
if event.keyval == 65307:
self.window.destroy()
self.kill()
async def update_results(self, widget):
print("Updating results...")
@@ -195,8 +202,9 @@ class Izvor:
if __name__ == "__main__":
gbulb.install(gtk=True)
loop = asyncio.get_event_loop()
izvor = Izvor()
izvor.window.show_all()
loop.run_forever()
try:
izvor.loop.run_forever()
finally:
izvor.loop.close()