From 046793b260905bec1a7e10ee710c79d9db180dbf Mon Sep 17 00:00:00 2001 From: arkology <43543909+arkology@users.noreply.github.com> Date: Thu, 23 Jan 2025 07:14:11 +0000 Subject: [PATCH] `TextureProgressBar` minimum size selection as maximum among all textures --- scene/gui/texture_progress_bar.cpp | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/scene/gui/texture_progress_bar.cpp b/scene/gui/texture_progress_bar.cpp index 151982312a4..3ed7bf2f511 100644 --- a/scene/gui/texture_progress_bar.cpp +++ b/scene/gui/texture_progress_bar.cpp @@ -81,15 +81,19 @@ bool TextureProgressBar::get_nine_patch_stretch() const { Size2 TextureProgressBar::get_minimum_size() const { if (nine_patch_stretch) { return Size2(stretch_margin[SIDE_LEFT] + stretch_margin[SIDE_RIGHT], stretch_margin[SIDE_TOP] + stretch_margin[SIDE_BOTTOM]); - } else if (under.is_valid()) { - return under->get_size(); - } else if (over.is_valid()) { - return over->get_size(); - } else if (progress.is_valid()) { - return progress->get_size(); } - return Size2(1, 1); + Size2 size = Size2(1, 1); + if (under.is_valid()) { + size = size.max(under->get_size()); + } + if (progress.is_valid()) { + size = size.max(progress->get_size()); + } + if (over.is_valid()) { + size = size.max(over->get_size()); + } + return size; } void TextureProgressBar::set_progress_texture(const Ref &p_texture) {