summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--crates/typst/src/layout/repeat.rs16
1 files changed, 8 insertions, 8 deletions
diff --git a/crates/typst/src/layout/repeat.rs b/crates/typst/src/layout/repeat.rs
index 4a0911e4..30fc314d 100644
--- a/crates/typst/src/layout/repeat.rs
+++ b/crates/typst/src/layout/repeat.rs
@@ -5,7 +5,7 @@ use crate::foundations::{
};
use crate::introspection::Locator;
use crate::layout::{
- Abs, AlignElem, Axes, BlockElem, Fragment, Frame, Point, Regions, Size,
+ Abs, AlignElem, Axes, BlockElem, Frame, Point, Region, Regions, Size,
};
use crate::utils::Numeric;
@@ -39,7 +39,7 @@ pub struct RepeatElem {
impl Show for Packed<RepeatElem> {
fn show(&self, _: &mut Engine, _: StyleChain) -> SourceResult<Content> {
- Ok(BlockElem::multi_layouter(self.clone(), layout_repeat)
+ Ok(BlockElem::single_layouter(self.clone(), layout_repeat)
.pack()
.spanned(self.span()))
}
@@ -52,20 +52,20 @@ fn layout_repeat(
engine: &mut Engine,
locator: Locator,
styles: StyleChain,
- regions: Regions,
-) -> SourceResult<Fragment> {
- let pod = Regions::one(regions.size, Axes::new(false, false));
+ region: Region,
+) -> SourceResult<Frame> {
+ let pod = Regions::one(region.size, Axes::new(false, false));
let piece = elem.body().layout(engine, locator, styles, pod)?.into_frame();
let align = AlignElem::alignment_in(styles).resolve(styles);
- let fill = regions.size.x;
+ let fill = region.size.x;
let width = piece.width();
let count = (fill / width).floor();
let remaining = fill % width;
let apart = remaining / (count - 1.0);
- let size = Size::new(regions.size.x, piece.height());
+ let size = Size::new(region.size.x, piece.height());
if !size.is_finite() {
bail!(elem.span(), "repeat with no size restrictions");
@@ -88,5 +88,5 @@ fn layout_repeat(
}
}
- Ok(Fragment::frame(frame))
+ Ok(frame)
}