diff --git a/src/slic3r/GUI/Gizmos/GLGizmoBrimEars.cpp b/src/slic3r/GUI/Gizmos/GLGizmoBrimEars.cpp index 5ee7bab7c8..9962060ebc 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoBrimEars.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoBrimEars.cpp @@ -265,16 +265,12 @@ void GLGizmoBrimEars::data_changed(bool is_serializing) bool GLGizmoBrimEars::on_mouse(const wxMouseEvent& mouse_event) { - if (use_grabbers(mouse_event)) { - return true; - } - // wxCoord == int --> wx/types.h Vec2i32 mouse_coord(mouse_event.GetX(), mouse_event.GetY()); Vec2d mouse_pos = mouse_coord.cast(); if (mouse_event.Moving()) { - return gizmo_event(SLAGizmoEventType::Moving, mouse_pos, mouse_event.ShiftDown(), mouse_event.AltDown(), false); + gizmo_event(SLAGizmoEventType::Moving, mouse_pos, mouse_event.ShiftDown(), mouse_event.AltDown(), false); } // when control is down we allow scene pan and rotation even when clicking @@ -317,15 +313,15 @@ bool GLGizmoBrimEars::on_mouse(const wxMouseEvent& mouse_event) return false; } } else if (mouse_event.LeftUp()) { - if (!m_parent.is_mouse_dragging()) { + if (gizmo_event(SLAGizmoEventType::LeftUp, mouse_pos, mouse_event.ShiftDown(), mouse_event.AltDown(), control_down) + && !m_parent.is_mouse_dragging()) { // in case SLA/FDM gizmo is selected, we just pass the LeftUp // event and stop processing - neither object moving or selecting // is suppressed in that case - gizmo_event(SLAGizmoEventType::LeftUp, mouse_pos, mouse_event.ShiftDown(), mouse_event.AltDown(), control_down); return true; } } - return false; + return use_grabbers(mouse_event); } // Following function is called from GLCanvas3D to inform the gizmo about a mouse/keyboard event.