Master effect stack does not update for undo and redo
- Dominant language
- C++
- Stars
- 18.4k
- Forks
- 2.7k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 85
Description
### Bug description
_No response_
### Steps to reproduce
1. make a rhythm track
2. Open the History view non-modal dialog
3. Add built-in reverb to the master stack
4. Play; hear reverb
5. Undo
6. Observe correct update in the History dialog. But...
### Expected behavior
After 6, the side bar should show an empty master stack, and playback should not have reverb
### Actual behavior
Still hear reverb; still see it in the stack
### Audacity Version
current master / alpha / nightly build
### Operating system
Windows, macOS, Linux
### Additional context
Sorry, my fault. RealtimeEffectList::RestoreUndoRedoState is not a correct implementation. Tags was the wrong analogy.
It should be redone analogously to TrackList Restorer, as a separate object, which holds a complete snapshot of the realtime effect stack's state by copying it completely.
Contributor guide
Research direction
Start by inspecting RealtimeEffectList::RestoreUndoRedoState and compare it with the TrackList Restorer, as suggested in the issue. Reproduce the undo step with a master reverb effect and verify that undo and redo update both the sidebar stack and playback behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- audio-video-rtc, desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100