diff --git a/cura/MachineManagerModel.py b/cura/MachineManagerModel.py index 130b492ff4..b9d6a9d37c 100644 --- a/cura/MachineManagerModel.py +++ b/cura/MachineManagerModel.py @@ -276,6 +276,16 @@ class MachineManagerModel(QObject): self.clearUserSettings() # As all users settings are noq a quality, remove them. self.setActiveQuality(name) + @pyqtSlot() + def updateUserContainerToQuality(self): + if not self._global_container_stack: + return + user_settings = self._global_container_stack.getTop() + quality = self._global_container_stack.findContainer({"type": "quality"}) + for key in user_settings.getAllKeys(): + quality.setProperty(key, "value", user_settings.getProperty(key, "value")) + self.clearUserSettings() # As all users settings are noq a quality, remove them. + @pyqtSlot(str) def setActiveMaterial(self, material_id): diff --git a/resources/qml/Actions.qml b/resources/qml/Actions.qml index 2e89ce043a..e09b6b5424 100644 --- a/resources/qml/Actions.qml +++ b/resources/qml/Actions.qml @@ -112,7 +112,7 @@ Item id: updateProfileAction; enabled: Cura.MachineManager.isGlobalStackValid && Cura.MachineManager.hasUserSettings && !Cura.MachineManager.isReadOnly(Cura.MachineManager.activeQualityId) text: catalog.i18nc("@action:inmenu menubar:profile","&Update Current Profile"); - onTriggered: UM.ActiveProfile.updateProfile(); + onTriggered: Cura.MachineManager.updateUserContainerToQuality() } Action