Fix square base

This commit is contained in:
Laurenz 2023-02-12 16:38:14 +01:00
parent 6260878245
commit ebbee6274c
5 changed files with 9 additions and 4 deletions

View File

@ -321,7 +321,7 @@ impl<'a, 'v> GridLayouter<'a, 'v> {
let rcols = vec![Abs::zero(); cols.len()];
let lrows = vec![];
// We use the regions for auto row measurement. Since at that moment,
// We use these regions for auto row measurement. Since at that moment,
// columns are already sized, we can enable horizontal expansion.
let mut regions = regions.clone();
regions.expand = Axes::new(true, false);

View File

@ -556,7 +556,7 @@ fn layout(
// Pad the child.
let child = child.clone().padded(inset.map(|side| side.map(Length::from)));
let mut pod = Regions::one(regions.first, regions.base, regions.expand);
let pod = Regions::one(regions.first, regions.base, regions.expand);
frame = child.layout(vt, styles, pod)?.into_frame();
// Relayout with full expansion into square region to make sure
@ -571,8 +571,8 @@ fn layout(
desired.min(regions.first.x).min(regions.first.y)
};
pod.first = Size::splat(length);
pod.expand = Axes::splat(true);
let size = Size::splat(length);
let pod = Regions::one(size, size, Axes::splat(true));
frame = child.layout(vt, styles, pod)?.into_frame();
}
} else {

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -0,0 +1,5 @@
// Test that square sets correct base for its content.
---
#set page(height: 80pt)
#square(width: 40%, rect(width: 60%, height: 80%))