summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/mini_timeline.cc15
-rw-r--r--gtk2_ardour/mini_timeline.h2
2 files changed, 15 insertions, 2 deletions
diff --git a/gtk2_ardour/mini_timeline.cc b/gtk2_ardour/mini_timeline.cc
index 23de27eb3c..d3c32b0d13 100644
--- a/gtk2_ardour/mini_timeline.cc
+++ b/gtk2_ardour/mini_timeline.cc
@@ -68,7 +68,7 @@ void
MiniTimeline::session_going_away ()
{
super_rapid_connection.disconnect ();
- session_connection.disconnect ();
+ session_connection.drop_connections ();
SessionHandlePtr::session_going_away ();
_jumplist.clear ();
}
@@ -85,10 +85,23 @@ MiniTimeline::set_session (Session* s)
super_rapid_connection = Timers::super_rapid_connect (
sigc::mem_fun (*this, &MiniTimeline::super_rapid_update)
);
+
_session->config.ParameterChanged.connect (session_connection,
invalidator (*this),
boost::bind (&MiniTimeline::parameter_changed, this, _1), gui_context()
);
+ _session->locations()->added.connect (session_connection,
+ invalidator (*this),
+ boost::bind (&MiniTimeline::update_minitimeline, this), gui_context()
+ );
+ _session->locations()->removed.connect (session_connection,
+ invalidator (*this),
+ boost::bind (&MiniTimeline::update_minitimeline, this), gui_context()
+ );
+ _session->locations()->changed.connect (session_connection,
+ invalidator (*this),
+ boost::bind (&MiniTimeline::update_minitimeline, this), gui_context()
+ );
_jumplist.clear ();
}
diff --git a/gtk2_ardour/mini_timeline.h b/gtk2_ardour/mini_timeline.h
index d0b07d0a62..2d50c11ddf 100644
--- a/gtk2_ardour/mini_timeline.h
+++ b/gtk2_ardour/mini_timeline.h
@@ -69,7 +69,7 @@ private:
Glib::RefPtr<Pango::Layout> _layout;
sigc::connection super_rapid_connection;
PBD::ScopedConnectionList marker_connection;
- PBD::ScopedConnection session_connection;
+ PBD::ScopedConnectionList session_connection;
framepos_t _last_update_frame;
AudioClock::Mode _clock_mode;