Fix degraded performance when changing mod settings on a large beatmap #28936
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.
BeatmapDifficultyCache
correctly decouples diffcalc operations from being triggered by mod setting changes by 100ms, but the beatmap attributes display in mod select was incorrectly recreating the star difficulty bindable every change to anything, causing tons of diffcalc tasks to be triggered when the user slides a slider.GetBindableDifficulty
is already supposed to handle any changes to mod or ruleset, therefore it is not supposed to be manually called on such events (it also defeats the purpose of it being a bindable in the first place?).