1
0
Fork 0
mirror of https://github.com/Ellpeck/MLEM.git synced 2024-06-16 10:44:32 +02:00

fixed auto-sized elements without children not being updated correctly

This commit is contained in:
Ell 2021-04-26 18:55:18 +02:00
parent f71f998508
commit 7792ce99c8

View file

@ -634,6 +634,8 @@ namespace MLEM.Ui.Elements {
autoSize.Y = newHeight; autoSize.Y = newHeight;
foundChild = lowest; foundChild = lowest;
} }
} else {
autoSize.Y = 0;
} }
} }
if (this.SetWidthBasedOnChildren) { if (this.SetWidthBasedOnChildren) {
@ -644,11 +646,13 @@ namespace MLEM.Ui.Elements {
autoSize.X = newWidth; autoSize.X = newWidth;
foundChild = rightmost; foundChild = rightmost;
} }
} else {
autoSize.X = 0;
} }
} }
if (this.TreatSizeAsMinimum) if (this.TreatSizeAsMinimum)
autoSize = Vector2.Max(autoSize, actualSize); autoSize = Vector2.Max(autoSize, actualSize);
if (foundChild != null) { if (autoSize != this.UnscrolledArea.Size) {
recursion++; recursion++;
if (recursion >= 16) { if (recursion >= 16) {
throw new ArithmeticException($"The area of {this} with root {this.Root?.Name} has recursively updated too often. Does its child {foundChild} contain any conflicting auto-sizing settings?"); throw new ArithmeticException($"The area of {this} with root {this.Root?.Name} has recursively updated too often. Does its child {foundChild} contain any conflicting auto-sizing settings?");