2025-03-08 19:39:55 +01:00
|
|
|
from __future__ import annotations
|
|
|
|
|
2025-03-08 19:55:49 +01:00
|
|
|
import os
|
2025-03-08 21:30:44 +01:00
|
|
|
import sys
|
2025-03-08 19:39:55 +01:00
|
|
|
|
|
|
|
import gi
|
|
|
|
|
2025-03-08 20:53:47 +01:00
|
|
|
gi.require_version("Gdk", "4.0")
|
2025-03-11 09:58:17 +01:00
|
|
|
gi.require_version("GLib", "2.0")
|
|
|
|
gi.require_version("GObject", "2.0")
|
2025-03-08 20:53:47 +01:00
|
|
|
gi.require_version("Gst", "1.0")
|
2025-03-11 09:58:17 +01:00
|
|
|
gi.require_version("Gtk", "4.0")
|
2025-03-08 21:56:41 +01:00
|
|
|
gi.require_version("Pango", "1.0")
|
2025-03-08 20:02:44 +01:00
|
|
|
|
2025-03-11 09:58:17 +01:00
|
|
|
from gi.repository import Gst # NOQA: E402
|
2025-03-08 20:02:44 +01:00
|
|
|
|
2025-03-12 23:16:57 +01:00
|
|
|
# Initialize GStreamer
|
|
|
|
Gst.init(None)
|
|
|
|
|
2025-03-11 09:58:17 +01:00
|
|
|
from .application import Application # NOQA: E402
|
|
|
|
from .thumbnailer import Thumbnailer # NOQA: E402
|
2025-03-08 19:39:55 +01:00
|
|
|
|
|
|
|
|
|
|
|
def main():
|
2025-03-08 21:30:44 +01:00
|
|
|
if len(sys.argv) >= 2:
|
|
|
|
os.chdir(sys.argv[1])
|
|
|
|
|
2025-03-09 21:21:20 +01:00
|
|
|
thumbnailer = Thumbnailer()
|
2025-03-11 09:58:17 +01:00
|
|
|
app = Application(thumbnailer=thumbnailer)
|
2025-03-09 21:21:20 +01:00
|
|
|
|
|
|
|
try:
|
|
|
|
app.run(None)
|
|
|
|
finally:
|
2025-03-11 11:46:33 +01:00
|
|
|
thumbnailer.shutdown()
|