From d2fa3d298ce51c5340e7d5ba4d90c0f80caf3ad8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9ctor=20Ram=C3=B3n=20Jim=C3=A9nez?= Date: Thu, 1 May 2025 16:59:36 +0200 Subject: [PATCH] Fix `pane_grid` split count not using local maximum --- widget/src/pane_grid/node.rs | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/widget/src/pane_grid/node.rs b/widget/src/pane_grid/node.rs index 83a655c7..c5cca541 100644 --- a/widget/src/pane_grid/node.rs +++ b/widget/src/pane_grid/node.rs @@ -82,13 +82,19 @@ impl Node { let b = b.count(); let (horizontal, vertical) = match axis { - Axis::Horizontal => (1, 0), - Axis::Vertical => (0, 1), + Axis::Horizontal => ( + a.horizontal() + b.horizontal() + 1, + a.vertical().max(b.vertical()), + ), + Axis::Vertical => ( + a.horizontal().max(b.horizontal()), + 1 + a.vertical() + b.vertical(), + ), }; Count::Split { - horizontal: a.horizontal() + b.horizontal() + horizontal, - vertical: a.vertical() + b.vertical() + vertical, + horizontal, + vertical, a: Box::new(a), b: Box::new(b), }