diff --git a/libs/ardour/ardour/triggerbox.h b/libs/ardour/ardour/triggerbox.h index 98efa0598a..c41ab3ebf0 100644 --- a/libs/ardour/ardour/triggerbox.h +++ b/libs/ardour/ardour/triggerbox.h @@ -847,6 +847,7 @@ class LIBARDOUR_API TriggerBox : public Processor, public std::enable_shared_fro RecordState record_enabled() const { return _record_state; } PBD::Signal RecEnableChanged; static PBD::Signal TriggerRecEnableChanged; + static PBD::Signal RegionCaptured; void arm_from_another_thread (Trigger& slot, samplepos_t, uint32_t chans, Temporal::BBT_Offset const &); void disarm(); diff --git a/libs/ardour/triggerbox.cc b/libs/ardour/triggerbox.cc index ae67ea90f7..be365aa76f 100644 --- a/libs/ardour/triggerbox.cc +++ b/libs/ardour/triggerbox.cc @@ -1772,6 +1772,10 @@ AudioTrigger::set_region_in_worker_thread_internal (std::shared_ptr r, b send_property_change (ARDOUR::Properties::region); + if (from_capture) { + box().RegionCaptured (this); + } + return 0; } @@ -2968,6 +2972,8 @@ MIDITrigger::set_region_in_worker_thread_from_capture (std::shared_ptr r send_property_change (ARDOUR::Properties::region); + box().RegionCaptured (this); + return 0; } @@ -3513,6 +3519,7 @@ TriggerBoxThread* TriggerBox::worker = 0; CueRecords TriggerBox::cue_records (256); std::atomic TriggerBox::_cue_recording (false); PBD::Signal TriggerBox::CueRecordingChanged; +PBD::Signal TriggerBox::RegionCaptured; bool TriggerBox::roll_requested = false; bool TriggerBox::_learning = false; TriggerBox::CustomMidiMap TriggerBox::_custom_midi_map;