2021-06-06 18:01:33 -04:00
|
|
|
# Copyright 2021 (c) Anna Schumaker.
|
2021-10-13 10:37:57 -04:00
|
|
|
import audio
|
2021-10-13 13:03:59 -04:00
|
|
|
import lib
|
2021-07-14 14:52:59 -04:00
|
|
|
import sidebar
|
2021-06-06 18:01:33 -04:00
|
|
|
from gi.repository import Gtk
|
2021-07-28 13:53:57 -04:00
|
|
|
from . import keyboard
|
2021-06-09 08:55:40 -04:00
|
|
|
from . import pane
|
2021-06-06 18:01:33 -04:00
|
|
|
|
2021-10-13 13:03:59 -04:00
|
|
|
class Window(Gtk.ApplicationWindow):
|
|
|
|
def __init__(self):
|
|
|
|
Gtk.ApplicationWindow.__init__(self)
|
|
|
|
self.set_icon_name("emmental")
|
|
|
|
self.set_title(lib.version.string())
|
|
|
|
self.set_titlebar(audio.Header())
|
2021-10-13 13:10:05 -04:00
|
|
|
self.set_child(pane.Pane())
|
2021-10-13 13:03:59 -04:00
|
|
|
self.add_controller(keyboard.Event)
|
2021-06-09 08:55:40 -04:00
|
|
|
|
2021-10-13 13:03:59 -04:00
|
|
|
lib.settings.initialize("window.width", 1400)
|
|
|
|
lib.settings.initialize("window.height", 800)
|
|
|
|
lib.settings.initialize("window.maximized", False)
|
|
|
|
self.set_default_size(lib.settings.get_int("window.width"),
|
|
|
|
lib.settings.get_int("window.height"))
|
|
|
|
self.connect("notify::default-width", self.width_changed)
|
|
|
|
self.connect("notify::default-height", self.height_changed)
|
|
|
|
self.connect("notify::maximized", self.maximized)
|
2021-06-07 15:22:41 -04:00
|
|
|
|
2021-10-13 13:03:59 -04:00
|
|
|
def width_changed(self, window, param):
|
|
|
|
lib.settings.set("window.width", self.get_default_size().width)
|
2021-06-07 15:22:41 -04:00
|
|
|
|
2021-10-13 13:03:59 -04:00
|
|
|
def height_changed(self, window, param):
|
|
|
|
lib.settings.set("window.height", self.get_default_size().height)
|
2021-06-08 08:50:21 -04:00
|
|
|
|
2021-10-13 13:03:59 -04:00
|
|
|
def maximized(self, window, param):
|
|
|
|
lib.settings.set("window.maximized", window.is_maximized())
|