When deleting the last track before a VCA, on-delete the editor-mixer
switches to display the next TAV. If that turns out to be a VCATAV,
the editor-mixer will ignore it and keep displaying the deleted route,
holding a shared pointer reference (ports won't be dropped, etc etc).
next_tv = (*i);
}
+ // skip VCAs (cannot be selected, n/a in editor-mixer)
+ if (dynamic_cast<VCATimeAxisView*> (next_tv)) {
+ /* VCAs are sorted last in line -- route_sorter.h, jump to top */
+ next_tv = track_views.front();
+ }
+ if (dynamic_cast<VCATimeAxisView*> (next_tv)) {
+ /* just in case: no master, only a VCA remains */
+ next_tv = 0;
+ }
+
if (next_tv) {
set_selected_mixer_strip (*next_tv);