GLCanvas on_idle changes to do updates on notifications correctly. Changed updating separators in GLToolbar.

This commit is contained in:
David Kocik 2020-12-08 09:09:38 +01:00
parent 2659ac567a
commit 3f11b7dea5
3 changed files with 11 additions and 15 deletions

View file

@ -2382,7 +2382,7 @@ void GLCanvas3D::on_size(wxSizeEvent& evt)
{
m_dirty = true;
}
void GLCanvas3D::on_idle(wxIdleEvent& evt)
{
if (!m_initialized)
@ -2395,7 +2395,7 @@ void GLCanvas3D::on_idle(wxIdleEvent& evt)
m_dirty |= notification_mgr->requires_render();
#endif // ENABLE_NEW_NOTIFICATIONS_FADE_OUT
// FIXME
m_dirty |= m_main_toolbar.update_items_state();
m_dirty |= m_undoredo_toolbar.update_items_state();
m_dirty |= wxGetApp().plater()->get_view_toolbar().update_items_state();
@ -2404,23 +2404,17 @@ void GLCanvas3D::on_idle(wxIdleEvent& evt)
m_dirty |= mouse3d_controller_applied;
#if ENABLE_NEW_NOTIFICATIONS_FADE_OUT
if (!m_dirty) {
if (notification_mgr->requires_update())
evt.RequestMore();
return;
if (notification_mgr->requires_update()) {
evt.RequestMore();
}
#else
#endif // ENABLE_NEW_NOTIFICATIONS_FADE_OUT
if (!m_dirty)
return;
#endif // ENABLE_NEW_NOTIFICATIONS_FADE_OUT
_refresh_if_shown_on_screen();
#if ENABLE_NEW_NOTIFICATIONS_FADE_OUT
if (m_extra_frame_requested || mouse3d_controller_applied || notification_mgr->requires_update()) {
#else
if (m_extra_frame_requested || mouse3d_controller_applied) {
#endif // ENABLE_NEW_NOTIFICATIONS_FADE_OUT
m_dirty = true;
m_extra_frame_requested = false;
evt.RequestMore();