From f15345a0cbcec60820292651e6f9bcc083bc5a32 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Tue, 11 Apr 2017 12:18:33 +0200 Subject: [PATCH] Restore material on global stack when switching back to single extrusion MachineManager._onGlobalContainerChanged removes the global material of multiextruder machines --- .../MachineSettingsAction/MachineSettingsAction.qml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/plugins/MachineSettingsAction/MachineSettingsAction.qml b/plugins/MachineSettingsAction/MachineSettingsAction.qml index e7f17f3b26..2456b62ddc 100644 --- a/plugins/MachineSettingsAction/MachineSettingsAction.qml +++ b/plugins/MachineSettingsAction/MachineSettingsAction.qml @@ -370,6 +370,13 @@ Cura.MachineAction return; } + var extruder_material; + if(index == 0 && Cura.MachineManager.hasMaterials) + { + // setting back to single extrusion + extruder_material = Cura.MachineManager.allActiveMaterialIds[Cura.MachineManager.activeStackId]; + } + machineExtruderCountProvider.setPropertyValue("value", index + 1); manager.forceUpdate(); base.extruderTabsCount = (index > 0) ? index + 1 : 0; @@ -389,6 +396,12 @@ Cura.MachineAction { ExtruderManager.setActiveExtruderIndex(-1); } + if(extruder_material) + { + // restore material on global stack + // MachineManager._onGlobalContainerChanged removes the global material of multiextruder machines + Cura.MachineManager.setActiveMaterial(extruder_material); + } } } }