From e83e2df02315dd82a5c0a5f6e5e5fecd6a17ee13 Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Fri, 12 Apr 2024 23:07:31 +0100 Subject: [PATCH] Fix: Build industry window did not take width of count into account. (#12476) --- src/industry_gui.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/industry_gui.cpp b/src/industry_gui.cpp index 211bcf7e69..8633c1e82c 100644 --- a/src/industry_gui.cpp +++ b/src/industry_gui.cpp @@ -429,12 +429,14 @@ public: { switch (widget) { case WID_DPI_MATRIX_WIDGET: { - Dimension d = GetStringBoundingBox(STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES); + SetDParamMaxDigits(0, 4); + Dimension count = GetStringBoundingBox(STR_JUST_COMMA, FS_SMALL); + Dimension d{}; for (const auto &indtype : this->list) { d = maxdim(d, GetStringBoundingBox(GetIndustrySpec(indtype)->name)); } - resize.height = std::max(this->legend.height, GetCharacterHeight(FS_NORMAL)) + padding.height; - d.width += this->legend.width + WidgetDimensions::scaled.hsep_wide + padding.width; + resize.height = std::max({this->legend.height, d.height, count.height}) + padding.height; + d.width += this->legend.width + WidgetDimensions::scaled.hsep_wide + WidgetDimensions::scaled.hsep_normal + count.width + padding.width; d.height = 5 * resize.height; size = maxdim(size, d); break;