From f2e6798e669637ff91000900c95a44192de643be Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Tue, 5 Apr 2022 18:01:35 -0600 Subject: [PATCH] change idle priority of Editor::redisplay_track_views() It appears that GDK/glib will not run idle callbacks with a lower priority than HIGH_IDLE+10 *if* a new user input event is pending. This means that if mouse motion events are arriving and causing resizes of selected tracks, the call to ::redisplay_track_views() which is needed to update all the other tracks, will not take place if a new motion event arrives. Changing the priority to same as is used for the ::idle_resize() callback prevents new motion events from being handled before ::redisplay_track_views() is called. --- gtk2_ardour/editor.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc index dee3ca7097..7afd91d247 100644 --- a/gtk2_ardour/editor.cc +++ b/gtk2_ardour/editor.cc @@ -5617,7 +5617,7 @@ void Editor::queue_redisplay_track_views () { if (!_tvl_redisplay_connection.connected ()) { - _tvl_redisplay_connection = Glib::signal_idle().connect (sigc::mem_fun (*this, &Editor::redisplay_track_views)); + _tvl_redisplay_connection = Glib::signal_idle().connect (sigc::mem_fun (*this, &Editor::redisplay_track_views), Glib::PRIORITY_HIGH_IDLE+10); } }