summaryrefslogtreecommitdiff
path: root/library/src/meta
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2023-02-12 22:04:27 +0100
committerLaurenz <laurmaedje@gmail.com>2023-02-12 22:04:27 +0100
commitfd90736fb6239409210f845a8589ba3d6b849ef3 (patch)
treec1993400b177f35b3622cc3fdf6c0f53d805bb69 /library/src/meta
parentd99359dede8f366fc16d38c6166b97a0f56fe0cb (diff)
Support fractional width for `box`
Diffstat (limited to 'library/src/meta')
-rw-r--r--library/src/meta/outline.rs16
1 files changed, 13 insertions, 3 deletions
diff --git a/library/src/meta/outline.rs b/library/src/meta/outline.rs
index 388021bb..d28a0f08 100644
--- a/library/src/meta/outline.rs
+++ b/library/src/meta/outline.rs
@@ -1,5 +1,7 @@
use super::HeadingNode;
-use crate::layout::{HNode, HideNode, ParbreakNode, RepeatNode, Spacing};
+use crate::layout::{
+ BoxNode, HNode, HideNode, ParbreakNode, RepeatNode, Sizing, Spacing,
+};
use crate::prelude::*;
use crate::text::{LinebreakNode, SpaceNode, TextNode};
@@ -180,10 +182,18 @@ impl Show for OutlineNode {
// Add filler symbols between the section name and page number.
if let Some(filler) = styles.get(Self::FILL) {
seq.push(SpaceNode.pack());
- seq.push(RepeatNode(filler.clone()).pack());
+ seq.push(
+ BoxNode {
+ body: RepeatNode(filler.clone()).pack(),
+ width: Sizing::Fr(Fr::one()),
+ height: Smart::Auto,
+ baseline: Rel::zero(),
+ }
+ .pack(),
+ );
seq.push(SpaceNode.pack());
} else {
- let amount = Spacing::Fractional(Fr::one());
+ let amount = Spacing::Fr(Fr::one());
seq.push(HNode { amount, weak: false }.pack());
}