summaryrefslogtreecommitdiff
path: root/src/layout/stack.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/layout/stack.rs')
-rw-r--r--src/layout/stack.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/layout/stack.rs b/src/layout/stack.rs
index 79fde72d..b9de1bbc 100644
--- a/src/layout/stack.rs
+++ b/src/layout/stack.rs
@@ -119,7 +119,8 @@ impl StackLayouter {
size.switch(self.main)
};
- let mut output = Frame::new(full_size.switch(self.main).to_size());
+ let mut output = Frame::new(full_size.switch(self.main).to_size(), Length::ZERO);
+ let mut baseline = None;
for (before, frame, aligns) in std::mem::take(&mut self.frames) {
let child_size = frame.size.switch(self.main);
@@ -142,9 +143,14 @@ impl StackLayouter {
});
let pos = Gen::new(main, cross).switch(self.main).to_point();
+ baseline.get_or_insert(pos.y + frame.baseline);
output.push_frame(pos, frame);
}
+ if let Some(baseline) = baseline {
+ output.baseline = baseline;
+ }
+
self.finished.push(output);
self.areas.next();
self.ruler = Align::Start;