From ce061f353efda5cb94b366d76371d1c98afb1086 Mon Sep 17 00:00:00 2001 From: FineFindus Date: Mon, 26 Jun 2023 20:59:42 +0200 Subject: [PATCH] feat(option-row): set activatable widget --- data/ui/option_row.blp | 2 ++ gradience/frontend/widgets/option_row.py | 7 +++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/data/ui/option_row.blp b/data/ui/option_row.blp index 8edee639..2c448118 100644 --- a/data/ui/option_row.blp +++ b/data/ui/option_row.blp @@ -2,6 +2,8 @@ using Gtk 4.0; using Adw 1; template GradienceOptionRow : Adw.ActionRow { + activatable-widget: color-value; + [suffix] MenuButton warning-button { valign: center; diff --git a/gradience/frontend/widgets/option_row.py b/gradience/frontend/widgets/option_row.py index bc18e6a1..28ad8757 100644 --- a/gradience/frontend/widgets/option_row.py +++ b/gradience/frontend/widgets/option_row.py @@ -89,10 +89,9 @@ class GradienceOptionRow(Adw.ActionRow): @Gtk.Template.Callback() def on_text_value_toggled(self, *_args): - if self.text_value_toggle.get_active(): - self.value_stack.set_visible_child(self.text_value) - else: - self.value_stack.set_visible_child(self.color_value) + widget = self.text_value if self.text_value_toggle.get_active() else self.color_value + self.value_stack.set_visible_child(widget) + self.set_activatable_widget(widget) def update_value(self, new_value, update_vars=False, **kwargs): rgba = Gdk.RGBA()