diff --git a/CHANGELOG.md b/CHANGELOG.md index 3a9031d..c3628c9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,7 @@ Improvements - Allow for checkboxes and radio buttons to be disabled - Only set a paragraph's area dirty when a text change would cause it to change size - Ensure that a panel gets notified of all relevant changes by calling OnChildAreaDirty for all grandchildren +- Avoid unnecessary panel updates by using an Epsilon comparison when scrolling children Fixes - Fixed paragraph links having incorrect hover locations when using special text alignments diff --git a/MLEM.Ui/Elements/Panel.cs b/MLEM.Ui/Elements/Panel.cs index 39bf5a3..c8914b4 100644 --- a/MLEM.Ui/Elements/Panel.cs +++ b/MLEM.Ui/Elements/Panel.cs @@ -120,7 +120,7 @@ namespace MLEM.Ui.Elements { return; var offset = new Vector2(0, -this.ScrollBar.CurrentValue); foreach (var child in this.GetChildren(c => c != this.ScrollBar, true)) { - if (child.ScrollOffset != offset) { + if (!child.ScrollOffset.Equals(offset, Epsilon)) { child.ScrollOffset = offset; this.relevantChildrenDirty = true; }