window: Handle user resizes
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
parent
2455d577df
commit
1c70390449
9
ui/event.py
Normal file
9
ui/event.py
Normal file
|
@ -0,0 +1,9 @@
|
|||
# Copyright 2021 (c) Anna Schumaker.
|
||||
from gi.repository import Gtk
|
||||
|
||||
Key = Gtk.EventControllerKey()
|
||||
|
||||
def on_key_released(controller, keyval, keycode, state):
|
||||
print(keyval, keycode, state)
|
||||
|
||||
Key.connect("key-released", on_key_released)
|
8
ui/test_event.py
Normal file
8
ui/test_event.py
Normal file
|
@ -0,0 +1,8 @@
|
|||
# Copyright 2021 (c) Anna Schumaker.
|
||||
from . import event
|
||||
from gi.repository import Gtk
|
||||
import unittest
|
||||
|
||||
class TestUIEvents(unittest.TestCase):
|
||||
def test_ui_events(self):
|
||||
self.assertIsInstance(event.Key, Gtk.EventControllerKey)
|
|
@ -1,8 +1,28 @@
|
|||
# Copyright 2021 (c) Anna Schumaker.
|
||||
import unittest
|
||||
from lib import settings
|
||||
from . import window
|
||||
from gi.repository import Gtk
|
||||
import unittest
|
||||
|
||||
class TestUIWindow(unittest.TestCase):
|
||||
def test_window(self):
|
||||
def tearDown(self):
|
||||
settings.reset()
|
||||
window.initialize()
|
||||
|
||||
def setUpClass():
|
||||
settings.reset()
|
||||
window.initialize()
|
||||
|
||||
def test_window_init(self):
|
||||
self.assertIsInstance(window.Window, Gtk.ApplicationWindow)
|
||||
window.Window.present()
|
||||
|
||||
def test_window_resize(self):
|
||||
self.assertEqual(settings.get_int("window.width"), 1100)
|
||||
self.assertEqual(settings.get_int("window.height"), 600)
|
||||
self.assertEqual(window.Window.get_property("default-width"), 1100)
|
||||
self.assertEqual(window.Window.get_property("default-height"), 600)
|
||||
|
||||
window.Window.set_default_size(1200, 800)
|
||||
self.assertEqual(settings.get_int("window.width"), 1200)
|
||||
self.assertEqual(settings.get_int("window.height"), 800)
|
||||
|
|
17
ui/window.py
17
ui/window.py
|
@ -1,6 +1,23 @@
|
|||
# Copyright 2021 (c) Anna Schumaker.
|
||||
from lib import settings
|
||||
import gi
|
||||
gi.require_version("Gtk", "4.0")
|
||||
from gi.repository import Gtk
|
||||
|
||||
Window = Gtk.ApplicationWindow()
|
||||
|
||||
def initialize():
|
||||
settings.initialize("window.width", 1100)
|
||||
settings.initialize("window.height", 600)
|
||||
initialize()
|
||||
|
||||
Window.set_default_size(settings.get_int("window.width"),
|
||||
settings.get_int("window.height"))
|
||||
|
||||
def on_change_width(window, width):
|
||||
settings.set("window.width", window.get_default_size().width)
|
||||
Window.connect("notify::default-width", on_change_width)
|
||||
|
||||
def on_change_height(window, height):
|
||||
settings.set("window.height", window.get_default_size().height)
|
||||
Window.connect("notify::default-height", on_change_height)
|
||||
|
|
Loading…
Reference in New Issue
Block a user