somewhat sort of working clip start drag

This commit is contained in:
Paul Davis 2024-11-25 17:53:56 -07:00
parent 7874cc74e5
commit 8c0c9cc115

View File

@ -721,7 +721,7 @@ void
Trigger::set_region_internal (std::shared_ptr<Region> r) Trigger::set_region_internal (std::shared_ptr<Region> r)
{ {
region_connection.disconnect (); region_connection.disconnect ();
/* No whole file regions in the triggerbox, just like we do not allow /* No whole file regions in the triggerbox, just like we do not allow
* them in playlists either. * them in playlists either.
*/ */
@ -740,7 +740,10 @@ Trigger::set_region_internal (std::shared_ptr<Region> r)
void void
Trigger::region_property_change (PropertyChange const & what_changed) Trigger::region_property_change (PropertyChange const & what_changed)
{ {
//std::cerr << "region prop change\n";
if (what_changed.contains (Properties::start) || what_changed.contains (Properties::length)) { if (what_changed.contains (Properties::start) || what_changed.contains (Properties::length)) {
//std::cerr << "bounds changed\n";
//PBD::stacktrace (std::cerr, 23);
bounds_changed (_region->start(), _region->end()); bounds_changed (_region->start(), _region->end());
} }
} }
@ -2395,7 +2398,7 @@ MIDITrigger::check_edit_swap (timepos_t const & time, bool playing, BufferSet& b
return; return;
} }
DEBUG_TRACE (DEBUG::Triggers, string_compose ("%1/%2 noticed pending swap\n", _box.order(), index())); DEBUG_TRACE (DEBUG::Triggers, string_compose ("%1/%2 noticed pending swap @ %3\n", _box.order(), index(), pending));
if (pending->rt_midibuffer) { if (pending->rt_midibuffer) {
if (playing) { if (playing) {
@ -2431,7 +2434,7 @@ MIDITrigger::check_edit_swap (timepos_t const & time, bool playing, BufferSet& b
} }
} }
adjust_bounds (pending->play_start, pending->play_end, pending->length, false); adjust_bounds (pending->play_start, pending->play_end, pending->length, true);
pending->rt_midibuffer = old_rtmb; pending->rt_midibuffer = old_rtmb;
old_pending_swap.store (pending); old_pending_swap.store (pending);
@ -3177,6 +3180,7 @@ MIDITrigger::model_contents_changed ()
/* And set it. RT thread will find this and do what needs to be done */ /* And set it. RT thread will find this and do what needs to be done */
DEBUG_TRACE (DEBUG::Triggers, string_compose ("%1/%2 pushed pending swap @ %3 for model contents change\n", _box.order(), index(), pending));
pending_swap.store (pending); pending_swap.store (pending);
/* Clean up a previous RT midi buffer swap */ /* Clean up a previous RT midi buffer swap */
@ -3201,6 +3205,7 @@ MIDITrigger::bounds_changed (Temporal::timepos_t const & start, Temporal::timepo
/* And set it. RT thread will find this and do what needs to be done */ /* And set it. RT thread will find this and do what needs to be done */
DEBUG_TRACE (DEBUG::Triggers, string_compose ("%1/%2 pushed pending swap @ %3 for bounds change\n", _box.order(), index(), pending));
pending_swap.store (pending); pending_swap.store (pending);
/* Clean up a previous RT midi buffer swap (if there is one) */ /* Clean up a previous RT midi buffer swap (if there is one) */