-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix loop_remove
#12521
fix loop_remove
#12521
Conversation
e01fcbc
to
aab5f77
Compare
thank you for this |
Please review and let me know when I can remove the skin test commit. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a first comment, the manual test is pending.
It works, thank you. The reloop button does not work, clear. I pressed it expecting an undo feature without thinking, because in case of a saved loop, there is not removing the in and out markers is barely visible. |
I don't quite understand, can you elaborate please? Thing is, ¹And tbh I don't know where to put it. Loop, reloop, In and Out already have a right-click connection. |
OK, so let's merge. Thank you. |
And the TEST commit slipped in again. What's the best strategy to avoid this in the future? What do you think? |
Oh sorry. |
I see your point, but that requires rebasing the TEST branch in case the base branch receives fixes, e.g. applying requested changes, and reviewers can not be sure they the TEST branch is in sync. Therefore I'd prefer 'Changes requested'. The 'Compare' button after force-push is our friend for this case: it's easy to verify the force-push only reverted skin changes / removed debug output / fixed typos etc. |
It is finally up to you. I personally consider it more work to rebase after review compared to keeping two branches during development, just because the developer and the reviewer need to find an extra time slot after the successful review. |
This fixes two bugs with the loop cue (temp loop not attached to a hotcue):
1)
Appearantly
loop_remove
#4802 did only work for the first loop that was ever created for a track.If a track already has a loop cue that was not cleared.
(and it seems Track menu > Reset > Loops only clears the temp. loop because Track emits cuesUpdated())
I fixed this inBaseTrackPlayerImpl::unloadTrack()
rather than inLoopingControl::slotLoopRemove()
, simply because that function already reads the loop positions and the loop cue.Nope, that's not sufficient, clear it in
slotRemoveLoop
so it is not restored when the unsaved track is be loaded to another player.2)
Currently, when an existing temp. loop is invalidated (set loop_in after loop_out) the loop cue is not cleared, i.e. the previous temp loop is restored next time the track is loaded.
The third commit changes LateNight so this can be tested easily. You may put that on top of 2.4 to confirm the bugs:
1)
loop_remove
otherwise)= loop is removed
= loop is restored
2)
= loop is removed
= previous loop is restored
Draft until that test commit is removed.