Fix of #1645
This commit is contained in:
parent
01dc8e77ac
commit
6094512f8f
2 changed files with 12 additions and 3 deletions
|
@ -4662,11 +4662,19 @@ void GLCanvas3D::reload_scene(bool refresh_immediately, bool force_full_scene_re
|
|||
m_camera.set_scene_box(scene_bounding_box(), *this);
|
||||
m_camera.set_target(m_camera.get_target(), *this);
|
||||
|
||||
// if no object is selected, deactivate active gizmo, if any
|
||||
// otherwise it will be shown after cleaning the scene (while it is active)
|
||||
if (m_selection.is_empty())
|
||||
{
|
||||
// If no object is selected, deactivate the active gizmo, if any
|
||||
// Otherwise it may be shown after cleaning the scene (if it was active while the objects were deleted)
|
||||
m_gizmos.reset_all_states();
|
||||
|
||||
// If no object is selected, reset the objects manipulator on the sidebar
|
||||
// to force a reset of its cache
|
||||
auto manip = wxGetApp().obj_manipul();
|
||||
if (manip != nullptr)
|
||||
manip->update_settings_value(m_selection);
|
||||
}
|
||||
|
||||
// and force this canvas to be redrawn.
|
||||
m_dirty = true;
|
||||
}
|
||||
|
|
|
@ -760,7 +760,8 @@ Sidebar& GUI_App::sidebar()
|
|||
|
||||
ObjectManipulation* GUI_App::obj_manipul()
|
||||
{
|
||||
return sidebar().obj_manipul();
|
||||
// If this method is called before plater_ has been initialized, return nullptr (to avoid a crash)
|
||||
return (plater_ != nullptr) ? sidebar().obj_manipul() : nullptr;
|
||||
}
|
||||
|
||||
ObjectSettings* GUI_App::obj_settings()
|
||||
|
|
Loading…
Reference in a new issue