From e80702c24cd2cf59d67eec34856e1f7a115637d6 Mon Sep 17 00:00:00 2001 From: lucasmerlin Date: Thu, 17 Apr 2025 11:50:26 +0200 Subject: [PATCH] Set preferred size --- crates/egui/src/widget_layout.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/crates/egui/src/widget_layout.rs b/crates/egui/src/widget_layout.rs index 12ad2f985..62cfc13c8 100644 --- a/crates/egui/src/widget_layout.rs +++ b/crates/egui/src/widget_layout.rs @@ -107,6 +107,7 @@ impl<'a> WidgetLayout<'a> { let mut desired_width = 0.0; let mut preferred_width = 0.0; + let mut preferred_height = 0.0; let mut height: f32 = 0.0; @@ -162,7 +163,8 @@ impl<'a> WidgetLayout<'a> { desired_width += size.x; preferred_width += preferred_size.x; - height = height.max(size.y); + height = height.at_least(size.y); + preferred_height = preferred_height.at_least(preferred_size.y); sized_items.push(sized); } @@ -179,7 +181,8 @@ impl<'a> WidgetLayout<'a> { desired_width += size.x; preferred_width += preferred_size.x; - height = height.max(size.y); + height = height.at_least(size.y); + preferred_height = preferred_height.at_least(preferred_size.y); sized_items.insert(index, sized); } @@ -239,6 +242,9 @@ impl<'a> WidgetLayout<'a> { } } + response.response.intrinsic_size = + Some(Vec2::new(preferred_width, preferred_height) + margin.sum()); + response } }