Remove the Gate knob from effects#8011
Merged
messmerd merged 11 commits intoLMMS:masterfrom Jul 22, 2025
Merged
Conversation
Now that the gate knob is gone, there's no reason for the processor count to stay in `Effect`
Also rename `checkGate` to `handleAutoQuit`
sakertooth
reviewed
Jul 20, 2025
Contributor
sakertooth
left a comment
There was a problem hiding this comment.
Weird compile error I am getting trying to test the PR. I believed this was already reported by someone else though:
/home/saker/projects/lmms/plugins/ZynAddSubFx/zynaddsubfx/src/Misc/QtXmlWrapper.cpp:199:24: error: no member named 'F_OPEN_UTF8' in namespace 'lmms'
199 | FILE *file = lmms::F_OPEN_UTF8(std::string(filename), "w");
| ~~~~~~^
/home/saker/projects/lmms/plugins/ZynAddSubFx/zynaddsubfx/src/Misc/QtXmlWrapper.cpp:321:59: error: no member named 'F_OPEN_UTF8' in namespace 'lmms'
321 | gzFile gzfile = gzdopen(lmms::fileToDescriptor(lmms::F_OPEN_UTF8(filename, "rb")), "rb");
Contributor
Seems like my Zyn submodule wasn't updated. |
sakertooth
approved these changes
Jul 21, 2025
allejok96
approved these changes
Jul 22, 2025
Contributor
allejok96
left a comment
There was a problem hiding this comment.
My only comment on the threshold calculation is that it looks Sufficiently Small ™
The other code changes look sane.
I tested playing a song with the setting on and off. The Gate knob is gone and the graying out of Decay works. My ears couldn't notice any difference, but my CPU graph could.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR removes the gate knob from effects, effectively hard coding it to
0.I also removed the gate's XML attribute from the preset files and mmp project files. This isn't strictly necessary but I just wanted to be thorough.
Out of all the presets, only Monstro's
Growl.xpfandHorrorLead.xpfused gate values that were non-zero, though I could not hear any difference with them set to 0. And when autoquit is disabled (as it has been by default since #4378 over 5 years ago), there is no difference anyway.I also made a couple performance improvements:
Supersedes #7486
Next step
After this, I'd like to convert the Decay knob for effects into a context menu entry. Because it's such a niche feature, it should not be taking up valuable space in the effect views. Once in the context menu, it would no longer be automatable in new projects, though I don't think that's a problem. And it would still be backwards compatible with any old project out there that automated it for whatever reason.
After that is done, #7438 will no longer need to conditionally display the Decay knob.