def _on_widget_moved(self, widget): parameter = self._reverse_lookup_position_widget(widget) es = EventSuppressor() for w in self._position_widgets[parameter]: es.add((w.events.moved, w._set_position)) with es.suppress(): parameter.value = widget.position[0]