update track-header width when track-number visibility is toggled
authorRobin Gareus <robin@gareus.org>
Sun, 31 Aug 2014 05:12:21 +0000 (07:12 +0200)
committerRobin Gareus <robin@gareus.org>
Sun, 31 Aug 2014 05:12:21 +0000 (07:12 +0200)
gtk2_ardour/ardour_ui_options.cc
gtk2_ardour/route_time_axis.cc

index a1c971bc4e2ed5e694dcccaab38fe06e45ae076a..a8be3ccd0cfb63b56c7579840fc38651344370e3 100644 (file)
@@ -435,6 +435,13 @@ ARDOUR_UI::session_parameter_changed (std::string p)
                synchronize_sync_source_and_video_pullup ();
                reset_main_clocks ();
                editor->queue_visual_videotimeline_update();
+       } else if (p == "track-name-number") {
+               /* DisplaySuspender triggers _route->redisplay() when going out of scope
+                * which eventually calls reset_controls_layout_width() and re-sets the
+                * track-header width.
+                * see also RouteTimeAxisView::update_track_number_visibility()
+                */
+               DisplaySuspender ds;
        }
 }
 
index bc86a79c14c3df0781f2bad2afb7472b5145cfb6..6ea0af9a50f4802d2d431ff71c88214e984489c7 100644 (file)
@@ -374,6 +374,7 @@ RouteTimeAxisView::label_view ()
 void
 RouteTimeAxisView::update_track_number_visibility ()
 {
+       DisplaySuspender ds;
        bool show_label = _session->config.get_track_name_number();
 
        if (_route && _route->is_master()) {