summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/layout/flex.rs15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/layout/flex.rs b/src/layout/flex.rs
index dfe38bba..286f6a30 100644
--- a/src/layout/flex.rs
+++ b/src/layout/flex.rs
@@ -139,6 +139,7 @@ impl FlexLayouter {
match unit {
FlexUnit::Boxed(boxed) => self.layout_box(boxed)?,
FlexUnit::Space(space) => {
+ self.layout_space();
self.space = Some(space);
}
@@ -201,11 +202,7 @@ impl FlexLayouter {
self.finish_run()?;
}
- if let Some(space) = self.space.take() {
- if self.run.size.x > Size::zero() && self.run.size.x + space <= self.usable {
- self.run.size.x += space;
- }
- }
+ self.layout_space();
self.run.content.push((self.run.size.x, boxed));
self.run.size.x += size.x;
@@ -214,6 +211,14 @@ impl FlexLayouter {
Ok(())
}
+ fn layout_space(&mut self) {
+ if let Some(space) = self.space.take() {
+ if self.run.size.x > Size::zero() && self.run.size.x + space <= self.usable {
+ self.run.size.x += space;
+ }
+ }
+ }
+
fn layout_set_axes(&mut self, axes: LayoutAxes) {
// TODO
}