TRA
November 22, 2021, 1:33pm
1
This bug only happens when three clips are moved diagonally one by one without any space between them.
If I move three clips straight up, snapping works. If I leave a blank between the first and second clips, snapping works.
I made the following change to Shotcut\share\shotcut\qml\views\timeline\Track.js
and the problem seems to have gone away.
Line
Before
After
32
clip.trackIndex === repeater.itemAt(i).trackIndex
clip.originalTrackIndex === repeater.itemAt(i).originalTrackIndex
I have made a pull request for this here:
mltframework:master
← traprog:snap_cross_track
opened 01:26PM - 22 Nov 21 UTC
A clip's `trackIndex` changes to the target track's index as soon as it's dragge… d to that track.
`clip.trackIndex === repeater.itemAt(i).trackIndex` becomes less restrictive, and `if` clause will look for any clip that satisfy `i === clip.DelegateModel.itemsIndex` and prevents snapping to that clip.
A clip's `originalTrackIndex` doesn't change to the target track's index as soon as it's dragged to that track, so `if` clause will only prevents snapping to self.
For some reason, only changing `clip.trackIndex` to `originalTrackIndex` broke snapping when multiple clips are dragged across tracks. Changing `repeater.itemAt(i).trackIndex` to `originalTrackIndex` fixed it.
Tested on Windows.
Tested on v21.10.31, but it’s been a problem for a while on prior releases.
shotcut
November 22, 2021, 7:41pm
2
This fix is merged for the next release 21.12