140c5e818f
somewhat simplify ripple-all by just grabbing all regions-at-or-after as the drag starts.
...
This means that we actually explicitly reposition all regions as part of the drag, and do not need to call
Editor::do_ripple(). We do still need to call Editor::ripple_marks() though
2021-08-13 12:51:28 -06:00
7afc45ac5c
helpful comment
2021-08-13 12:51:28 -06:00
12b536d8f2
add API to fetch all regionviews after a given position
2021-08-13 12:51:28 -06:00
a1ef870866
prevent ripple drag from passing earlier region starts
2021-08-13 12:51:28 -06:00
068cace22c
fix semantics of Playlist::find_prev_region_start()
2021-08-13 12:51:28 -06:00
311db08cc3
manual fixups for rebase-on-master issues
2021-08-13 12:51:28 -06:00
a95b1d2cd1
for RegionMotionDrag, set _earliest_time_limit if rippling (not yet used)
2021-08-13 12:51:28 -06:00
7e3b22e519
add Playlist::find_prev_region_start()
2021-08-13 12:51:27 -06:00
b04ea33f18
move Drag::_earliest_time_limit to be protected, not private
2021-08-13 12:51:27 -06:00
fbd6c7eaee
add earliest_time_limit for Drag class
2021-08-13 12:51:27 -06:00
ac1d5bac0a
improve rippling of marks to include any in the gap between the primary-dragged region and the one before it
2021-08-13 12:51:27 -06:00
fc5143772b
fix deadlock-inducing failure-to-thaw during region drag (no copy)
2021-08-13 12:51:27 -06:00
1ccf272d58
ripple-all now moves markers too
2021-08-13 12:51:27 -06:00
0b06c4dc2b
manually fix rebase error
2021-08-13 12:51:27 -06:00
3ab65dc62d
keep session range correct when rippling markers
2021-08-13 12:51:27 -06:00
78a9e29507
fix deadlock and direction error in Locations::ripple()
2021-08-13 12:51:27 -06:00
ddbe0747a9
add whitespace
2021-08-13 12:51:27 -06:00
93982614c4
remove debug output
2021-08-13 12:51:27 -06:00
ff85496b03
we should clear property changes recursively for a region drag, not just toplevel properties
2021-08-13 12:51:27 -06:00
989408626d
at end of no-copy region drag, do ripple if appropriate
2021-08-13 12:51:27 -06:00
6896f7228d
fill ripple-excluded region container (non-copy drag)
2021-08-13 12:51:27 -06:00
4a1d09d474
determine potential ripple range for non-copy drag
2021-08-13 12:51:27 -06:00
6efbcf1ff7
add variables to track potential ripple at end of drag (no-copy)
2021-08-13 12:51:27 -06:00
741a86ccf6
add container for ripple-excluded regions (no-copy drag)
2021-08-13 12:51:27 -06:00
d2ebc58575
at end of copy-region drag, potentially do ripple
2021-08-13 12:51:27 -06:00
76de8ab3f9
fill ripple-excluded regions container
2021-08-13 12:51:27 -06:00
04c03199dc
determine scope of potential end-of-drag ripple
2021-08-13 12:51:27 -06:00
283e2103ba
add variables to determine scope of potential ripple at end of drag
2021-08-13 12:51:27 -06:00
7bd03b68ee
add container for regions to be excluded from ripple
2021-08-13 12:51:27 -06:00
3e6de18919
move point at which to-be-rerippled regionviews are collected in a RegionMotionDrag
2021-08-13 12:51:27 -06:00
27a906444a
clarify comment
2021-08-13 12:51:27 -06:00
e3c7ead943
no cross-track region drags in any ripple mode
2021-08-13 12:51:27 -06:00
0c77a35178
completely remove RegionRippleDrag, and merge Editor::add_region(_copy,}_drag() into one method
2021-08-13 12:51:27 -06:00
9d54bb08e7
remove almost all of RegionRippleDrag, collapsing down to just collecting additional RegionViews that need to be moved during the drag
2021-08-13 12:51:27 -06:00
46fa558bc6
finalize removal of splicing code from ARDOUR::Playlist
2021-08-13 12:51:27 -06:00
963d2b6906
use Playlist::rdiff_and_add_command() rather than explicit code
2021-08-13 12:51:27 -06:00
90e4adfed1
ripple drag never allows y motion
2021-08-13 12:51:27 -06:00
77e67809f9
we removed Splice mode from the GUI 7 years ago; now remove all code related to Splice mode (GUI edition)
2021-08-13 12:51:27 -06:00
43c713d0ef
we removed Splice mode from the GUI 7 years ago; now remove all code related to Splice mode
2021-08-13 12:51:27 -06:00
ece174ca47
region selection toggle in RippleAll mode applies across all tracks
2021-08-13 12:51:27 -06:00
38cb16f521
in ripple all edit mode, extend-region selection operation works across all tracks
2021-08-13 12:51:27 -06:00
e5175f51d6
make region-selection on click apply across tracks if RippleAll is in use
2021-08-13 12:51:27 -06:00
eac366ec8e
remove RegionRippleDrag::allow_moves_across_tracks since this was already unconditionally set to false
...
It was also commented "rippling across all tracks is the future", and created notable technical debt
2021-08-13 12:51:27 -06:00
5c830233ec
implement ripple-all via select-all for selection drags
2021-08-13 12:51:27 -06:00
636f1331e8
stop using ripple callback API, add Editor::should_ripple() and Editor::do_ripple() to manage rippling
2021-08-13 12:51:27 -06:00
a2b3e31e10
libardour: remove ripple callback API, and fix deadlock issues with ripple/ripple_locked/ripple_unlocked/remove_gaps
2021-08-13 12:51:27 -06:00
8e2c5239c4
add a 2nd glib log handler setup call, because for reasons not entirely clear, g_log_set_handler(NULL, ...) doesn't cover all g_logv messages
2021-08-13 12:51:27 -06:00
27456b93ad
initial addition of Ripple All edit mode to GUI
2021-08-13 12:51:27 -06:00
2f11a49103
Add "Ripple All" edit mode to libardour
2021-08-13 12:51:27 -06:00
e7595f2cd5
follow modified Playlist ripple callback API
2021-08-13 12:51:27 -06:00