#!/usr/bin/python3.6 -s
import os, sys, signal

def sigint(*a):
	print("\n*break*")
	sys.exit(0)

if __name__ == "__main__":
	signal.signal(signal.SIGINT, sigint)

	# ── STEP 1: translations BEFORE importing GTK ────────────────────────
	# GLib reads os.environ['LANGUAGE'] at import time, so this must come
	# before ANY gi import.
	from scc.i18n import init_translations
	init_translations()
	# ────────────────────────────────────────────────────────────────────

	import gi
	gi.require_version('Gtk', '3.0')
	gi.require_version('GdkX11', '3.0')
	gi.require_version('Rsvg', '2.0')

	# ── STEP 2: patch Builder so every glade file gets translated ────────
	# Must be called right after require_version, before any Builder() call.
	from scc.i18n import patch_gtk_builder
	patch_gtk_builder()
	# ────────────────────────────────────────────────────────────────────

	from scc.tools import init_logging
	from scc.paths import get_share_path
	init_logging()

	from gi.repository import Gtk, GObject
	glades = os.path.join(get_share_path(), "glade")
	images = os.path.join(get_share_path(), "images")
	if Gtk.IconTheme.get_default():
		Gtk.IconTheme.get_default().append_search_path(images)

	from scc.gui.app import App
	App(glades, images).run(sys.argv)
