summaryrefslogtreecommitdiff
path: root/libs/ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2015-05-08 12:20:25 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2015-06-29 14:18:10 -0400
commit43f45ed0b05fea6ecc29032b8d96e9ab85435c96 (patch)
tree0abe05b8d3ae4df247c35025a0620e0101e904bb /libs/ardour
parent4235367acdae87abc174537395fb9c690725b5cd (diff)
mark session dirty when markers/ranges are changed
Diffstat (limited to 'libs/ardour')
-rw-r--r--libs/ardour/session.cc11
1 files changed, 10 insertions, 1 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index b1b0b1e1b5..b24ad53b37 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -1604,6 +1604,15 @@ Session::location_added (Location *location)
_session_range_location = location;
}
+ if (location->is_mark()) {
+ /* listen for per-location signals that require us to do any * global updates for marks */
+
+ location->StartChanged.connect_same_thread (skip_update_connections, boost::bind (&Session::update_marks, this, location));
+ location->EndChanged.connect_same_thread (skip_update_connections, boost::bind (&Session::update_marks, this, location));
+ location->Changed.connect_same_thread (skip_update_connections, boost::bind (&Session::update_marks, this, location));
+ location->FlagsChanged.connect_same_thread (skip_update_connections, boost::bind (&Session::update_marks, this, location));
+ }
+
if (location->is_skip()) {
/* listen for per-location signals that require us to update skip-locate events */
@@ -1614,7 +1623,7 @@ Session::location_added (Location *location)
update_skips (location, true);
}
-
+
set_dirty ();
}