Ripple All Tracks bug

What is your operating system?
Windows 10 pro

What is your Shotcut version (see Help > About Shotcut)? Is it 32-bit?
Video recorded on version 22.03.30. 64-bit.
Same bug still happens on 22.04.25 64 bit

Can you repeat the problem? If so, what are the steps?
If you select “Ripple” and “Ripple All Tracks” it works fine if you are moving a layer without any stack on top of it. It there is a video layer on top it dissapears instead of being moved together as expected.

Can’t duplicate

Shotcut 22.04.25
Windows 10 Home
shotcut_2022-04-30_11-51-05

I think the difference is that he is moving a clip backwards between two other clips - which ends up being an “insert” operation rather than a move operation. I think the ripple behavior for insert might be different than for move. I am kind of guessing here since I am not very familiar with all the ripple behaviors.

Sometimes there are not clear rules and expectations about what ripple on other tracks will or should do. Often moving clip(s) while in ripple mode behaves similar to cut and paste (lift and overwrite when not ripple). Other times, when it is a single clip moved on the same track, it pushes or pulls all of the following clips. In your last example, if you had cut the clip and then pasted it to the new location you would get the same result. The act of moving the clip leftward is removing footage at a certain time range, which when rippling all tracks removes footage from other tracks. Other times, moving a clip leftward on the same track simply tries to pull the clips (rightward movement is pushing). The heuristic for choosing the behavior is based on whether the new location is a blank area of the track. I think this heuristic should be changed to consider whether the blank area is immediately to the left. But changing that would not fix what you are reporting. Rather, it would have made your first example moving the clip leftward similar to the second example. I think to address what you describe requires a major rewrite of this code to not reuse the cut and paste functions.

In any case, this area gets quite messy with many use cases and corner conditions such that changing it is likely to introduce more bugs and change behaviors that some users learned and now expect.

The current code works fine if I dont cross tracks most of the time. If I do cross then it gets unpredictable, deletes tracks or places tracks in wrong place. I can’t see any purpose for the current code while crossing tracks.

No idea how hard it is to fix but if the software could treat all tracks, and marks, the same ways as its treating the lane I’m moving the video into it would be predictable and usefull.

Please be aware that “track” is something very specific in Shotcut. Each row of the timeline is a track, which I think you called a “lane.” And each blue or green (audio) rectangle is a clip. I think you meant “clip” instead of “track.”

Yes, My bad. Didn’t know the technical terms.