// We capture a shared_ptr to the composition, which means that as long as this undo object lives, the composition object is not deleted. To insert it
// back it is sufficient to register it.
registerComposition(composition);
composition->setCurrentTrackId(trackId,true);
replantCompositions(compositionId,false);
checkRefresh(new_in,new_out);
returntrue;
};
if(operation()){
Funupdate_monitor=[this,new_in,new_out](){
checkRefresh(new_in,new_out);
returntrue;
};
update_monitor();
PUSH_LAMBDA(update_monitor,operation);
UPDATE_UNDO_REDO(operation,reverse,undo,redo);
returntrue;
}
...
...
@@ -1229,8 +1245,6 @@ bool TimelineModel::requestFakeGroupMove(int clipId, int groupId, int delta_trac
// Moving groups is a two stage process: first we remove the clips from the tracks, and then try to insert them back at their calculated new positions.
// This way, we ensure that no conflict will arise with clips inside the group being moved