From 1ba9100994102ab4bc99fa004ae52a02fbed0357 Mon Sep 17 00:00:00 2001 From: bubnikv Date: Wed, 31 Jul 2019 14:00:43 +0200 Subject: [PATCH] Fix of gizmo deserialization after Undo / Redo: Deselect all gizmos but the gizmo to be deserialized. --- src/slic3r/GUI/Gizmos/GLGizmosManager.hpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/slic3r/GUI/Gizmos/GLGizmosManager.hpp b/src/slic3r/GUI/Gizmos/GLGizmosManager.hpp index e1978e60d..b1c000ceb 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmosManager.hpp +++ b/src/slic3r/GUI/Gizmos/GLGizmosManager.hpp @@ -108,11 +108,15 @@ public: ar(m_current); GLGizmoBase* curr = get_current(); - if (curr != nullptr) - { - curr->set_state(GLGizmoBase::On); - curr->load(ar); - } + for (GizmosMap::const_iterator it = m_gizmos.begin(); it != m_gizmos.end(); ++it) { + GLGizmoBase* gizmo = it->second; + if (gizmo != nullptr) { + gizmo->set_hover_id(-1); + gizmo->set_state((it->second == curr) ? GLGizmoBase::On : GLGizmoBase::Off); + if (gizmo == curr) + gizmo->load(ar); + } + } } template