From 6046b1e8929e40b89edf49a97e0e5da580eb04aa Mon Sep 17 00:00:00 2001 From: itsmattkc Date: Tue, 14 Apr 2020 23:36:59 +1000 Subject: [PATCH] timeline: fixed bug that prevented clips from being dragged to lower tracks --- app/widget/timelinewidget/tool/pointer.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/app/widget/timelinewidget/tool/pointer.cpp b/app/widget/timelinewidget/tool/pointer.cpp index 27fcbb3cd..848b15585 100644 --- a/app/widget/timelinewidget/tool/pointer.cpp +++ b/app/widget/timelinewidget/tool/pointer.cpp @@ -370,7 +370,16 @@ void TimelineWidget::PointerTool::ProcessDrag(const TimelineCoordinate &mouse_po // Validate movement (enforce all ghosts moving in legal ways) time_movement = FrameValidateInternal(time_movement, parent()->ghost_items_); - track_movement = ValidateTrackMovement(track_movement, parent()->ghost_items_); + + // Validate ghosts that are being moved (clips from other track types do NOT get validated or moved) + QVector validate_track_ghosts = parent()->ghost_items_; + for (int i=0;iTrack().type() != drag_track_type_) { + validate_track_ghosts.removeAt(i); + i--; + } + } + track_movement = ValidateTrackMovement(track_movement, validate_track_ghosts); // Perform movement foreach (TimelineViewGhostItem* ghost, parent()->ghost_items_) {