Commit 55c40af3 authored by Roman Alifanov's avatar Roman Alifanov

widgets: block signal handlers during UI init

parent ba8b57a2
......@@ -33,7 +33,8 @@ class ChoiceWidget(BaseWidget):
def _rebuild_items(self):
items = list(self.setting.map.keys()) if self.setting.map else []
self.model.splice(0, self.model.get_n_items(), items)
with self.dropdown.handler_block(self.handler_id):
self.model.splice(0, self.model.get_n_items(), items)
self.dropdown.set_sensitive(bool(items))
def _update_dropdown_selection(self):
......
......@@ -58,10 +58,11 @@ class NumStepper(BaseWidget):
map_data = self.setting.map or {}
lower, upper, step, digits = self._get_range_values(map_data)
adjustment = self.spin.get_adjustment()
adjustment.set_lower(lower)
adjustment.set_upper(upper)
adjustment.set_step_increment(step)
self.spin.set_digits(digits)
with self.spin.handler_block(self.spin_handler_id):
adjustment.set_lower(lower)
adjustment.set_upper(upper)
adjustment.set_step_increment(step)
self.spin.set_digits(digits)
self.spin.set_sensitive(bool(map_data))
self.update_display()
......
......@@ -186,7 +186,8 @@ class ThemeChooserWidget(BaseWidget):
self.theme_cards[value] = flowbox_child
if value == current_value:
self.flowbox.select_child(flowbox_child)
with GObject.signal_handler_block(self.flowbox, self.handler_id):
self.flowbox.select_child(flowbox_child)
def _create_color_preview(self, value):
"""Create a colored preview box for the theme."""
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment