From c69a8a4ea9733246f4602f7de4a09f89c02ba706 Mon Sep 17 00:00:00 2001 From: Yaroslav Chvanov Date: Thu, 9 Mar 2023 17:37:02 +0300 Subject: [PATCH] ratbagd.py: listen and notify about RatabgdProfile.Disabled changes --- piper/ratbagd.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/piper/ratbagd.py b/piper/ratbagd.py index 88b0e68..cb0936f 100644 --- a/piper/ratbagd.py +++ b/piper/ratbagd.py @@ -443,6 +443,7 @@ class RatbagdProfile(_RatbagdDBus): self._angle_snapping = self._get_dbus_property("AngleSnapping") self._debounce = self._get_dbus_property("Debounce") self._dirty = self._get_dbus_property("IsDirty") + self._disabled = self._get_dbus_property("Disabled") self._report_rate = self._get_dbus_property("ReportRate") # FIXME: if we start adding and removing objects from any of these @@ -489,6 +490,16 @@ class RatbagdProfile(_RatbagdDBus): self._debounce = debounce self.notify("debounce") + try: + disabled = changed_props["Disabled"] + except KeyError: + # Different property changed, skip. + pass + else: + if disabled != self._disabled: + self._disabled = disabled + self.notify("disabled") + try: active = changed_props["IsActive"] except KeyError: @@ -554,7 +565,7 @@ class RatbagdProfile(_RatbagdDBus): @GObject.Property def disabled(self): """tells if the profile is disabled.""" - return self._get_dbus_property("Disabled") + return self._disabled @disabled.setter def disabled(self, disabled):