From 01fbd5049d09b44369b7cd1f283c473afda5d2be Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Tue, 27 Feb 2024 01:21:02 +0100 Subject: Fix `Column` and `Row` fluidity being overridden by `push` --- widget/src/column.rs | 11 +++-------- widget/src/keyed/column.rs | 11 +++-------- widget/src/row.rs | 11 +++-------- 3 files changed, 9 insertions(+), 24 deletions(-) (limited to 'widget') diff --git a/widget/src/column.rs b/widget/src/column.rs index e59a0809..d37ef695 100644 --- a/widget/src/column.rs +++ b/widget/src/column.rs @@ -115,15 +115,10 @@ where child: impl Into>, ) -> Self { let child = child.into(); - let size = child.as_widget().size_hint(); + let child_size = child.as_widget().size_hint(); - if size.width.is_fill() { - self.width = Length::Fill; - } - - if size.height.is_fill() { - self.height = Length::Fill; - } + self.width = self.width.enclose(child_size.width); + self.height = self.height.enclose(child_size.height); self.children.push(child); self diff --git a/widget/src/keyed/column.rs b/widget/src/keyed/column.rs index ce74e701..8a8d5fe7 100644 --- a/widget/src/keyed/column.rs +++ b/widget/src/keyed/column.rs @@ -110,15 +110,10 @@ where child: impl Into>, ) -> Self { let child = child.into(); - let size = child.as_widget().size_hint(); + let child_size = child.as_widget().size_hint(); - if size.width.is_fill() { - self.width = Length::Fill; - } - - if size.height.is_fill() { - self.height = Length::Fill; - } + self.width = self.width.enclose(child_size.width); + self.height = self.height.enclose(child_size.height); self.keys.push(key); self.children.push(child); diff --git a/widget/src/row.rs b/widget/src/row.rs index b41b5380..47feff9c 100644 --- a/widget/src/row.rs +++ b/widget/src/row.rs @@ -106,15 +106,10 @@ where child: impl Into>, ) -> Self { let child = child.into(); - let size = child.as_widget().size_hint(); + let child_size = child.as_widget().size_hint(); - if size.width.is_fill() { - self.width = Length::Fill; - } - - if size.height.is_fill() { - self.height = Length::Fill; - } + self.width = self.width.enclose(child_size.width); + self.height = self.height.enclose(child_size.height); self.children.push(child); self -- cgit