diff --git a/cura/Settings/MachineManager.py b/cura/Settings/MachineManager.py index 0758d76608..7cfb3c23d4 100644 --- a/cura/Settings/MachineManager.py +++ b/cura/Settings/MachineManager.py @@ -243,11 +243,11 @@ class MachineManager(QObject): def _onPropertyChanged(self, key, property_name): if property_name == "value": - # If a setting is not settable per extruder, but "has enabled relations" that are settable per extruder + # If a setting is not settable per extruder, but "has enabled" or "value" relations that are settable per extruder # we need to copy the value to global, so that the front-end displays the right settings. if not self._active_container_stack.getProperty(key, "settable_per_extruder"): relations = self._global_container_stack.getBottom()._getDefinition(key).relations - for relation in filter(lambda r: r.role == "enabled" and r.type == RelationType.RequiredByTarget, relations): + for relation in filter(lambda r: (r.role == "enabled" or r.role == "value") and r.type == RelationType.RequiredByTarget, relations): # Target setting is settable per extruder if self._active_container_stack.getProperty(relation.target.key, "settable_per_extruder"): new_value = self._global_container_stack.getProperty(key, "value")