From 739abdd401d304c6eeacd1ce1d7be5c9b95705df Mon Sep 17 00:00:00 2001 From: itsmattkc Date: Thu, 21 Mar 2019 10:33:55 +1100 Subject: [PATCH] fixed #655 --- ui/timelineheader.cpp | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/ui/timelineheader.cpp b/ui/timelineheader.cpp index 0f1bb5aa7..a1779c85d 100644 --- a/ui/timelineheader.cpp +++ b/ui/timelineheader.cpp @@ -328,11 +328,26 @@ double TimelineHeader::get_zoom() { void TimelineHeader::delete_markers() { if (selected_markers.size() > 0) { + + // Send command to delete selected markers DeleteMarkerAction* dma = new DeleteMarkerAction(viewer->marker_ref); - for (int i=0;imarkers.append(selected_markers.at(i)); - } + dma->markers.append(selected_markers); olive::UndoStack.push(dma); + + // remove any indices for the selected markers that no longer exist + for (int i=0;i= viewer->marker_ref->size()) { + selected_markers.removeAt(i); + i--; + } + } + + // if we removed all the indices, re-select the last marker in the array so something is always selected + // (allows users to hold delete when deleting markers) + if (selected_markers.isEmpty() && !viewer->marker_ref->isEmpty()) { + selected_markers.append(viewer->marker_ref->size() - 1); + } + update_parents(); } }