mirror of
https://github.com/jtgans/g13gui.git
synced 2025-06-20 00:14:09 -04:00
ui: Make MainWindow actually save prefs to disk on change
This commit is contained in:
parent
c924aba55c
commit
9d7d4fafa2
@ -28,7 +28,7 @@ class MainWindow(Gtk.ApplicationWindow, GtkObserver):
|
|||||||
|
|
||||||
self._app = app
|
self._app = app
|
||||||
self._prefs = prefs
|
self._prefs = prefs
|
||||||
self._prefs.registerObserver(self, 'selectedProfile')
|
self._prefs.registerObserver(self, {'selectedProfile'})
|
||||||
self._prefs.selectedProfile().registerObserver(self)
|
self._prefs.selectedProfile().registerObserver(self)
|
||||||
self._lastProfileName = self._prefs.selectedProfileName()
|
self._lastProfileName = self._prefs.selectedProfileName()
|
||||||
|
|
||||||
@ -52,19 +52,21 @@ class MainWindow(Gtk.ApplicationWindow, GtkObserver):
|
|||||||
self.show_all()
|
self.show_all()
|
||||||
|
|
||||||
def _updateProfileRegistration(self):
|
def _updateProfileRegistration(self):
|
||||||
self._lastProfileName.removeObserver(self)
|
lastProfile = self._prefs.profiles(self._lastProfileName)
|
||||||
self._lastProfileName = self._prefs.selectedProfile()
|
lastProfile.removeObserver(self)
|
||||||
self._lastProfileName.registerObserver(self)
|
self._lastProfileName = self._prefs.selectedProfileName()
|
||||||
|
self._prefs.selectedProfile().registerObserver(self)
|
||||||
|
|
||||||
def onChangeTrigger(self, subject, changeType, key, data=None):
|
def onChangeTrigger(self, subject, changeType, key, data=None):
|
||||||
if key == 'selectedProfile':
|
if key == 'selectedProfile':
|
||||||
self._updateProfileRegistration(self)
|
self._updateProfileRegistration()
|
||||||
elif key == 'profile':
|
|
||||||
pass
|
|
||||||
|
|
||||||
t = threading.Thread(
|
t = threading.Thread(
|
||||||
target=PreferencesStore.storePrefs, args=(self._prefs,))
|
target=PreferencesStore.storePrefs,
|
||||||
|
args=(self._prefs,),
|
||||||
|
daemon=True)
|
||||||
t.start()
|
t.start()
|
||||||
|
print('Detected change -- saving via %s' % repr(t))
|
||||||
|
|
||||||
def setupHeaderBar(self):
|
def setupHeaderBar(self):
|
||||||
self._headerBar = Gtk.HeaderBar()
|
self._headerBar = Gtk.HeaderBar()
|
||||||
|
Loading…
Reference in New Issue
Block a user