From 34f1a232463bafeb3d8d3fa9adeae33c4bb95b23 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Thu, 23 May 2024 11:55:00 +0200 Subject: [PATCH] Do layout short-circuit in flow instead of realization (#4231) --- crates/typst/src/layout/flow.rs | 36 ++++++++++++++++++++++------ crates/typst/src/layout/mod.rs | 20 +++++++++------- crates/typst/src/realize/mod.rs | 32 +++++++++---------------- crates/typst/src/realize/process.rs | 9 ------- tests/ref/grid-cell-override.png | Bin 3546 -> 3539 bytes tests/ref/grid-rowspan-split-2.png | Bin 1004 -> 966 bytes tests/ref/grid-rtl-rowspan.png | Bin 1012 -> 978 bytes tests/ref/place-float-columns.png | Bin 28138 -> 28346 bytes tests/ref/table-cell-override.png | Bin 3546 -> 3539 bytes 9 files changed, 51 insertions(+), 46 deletions(-) diff --git a/crates/typst/src/layout/flow.rs b/crates/typst/src/layout/flow.rs index c550ac28a..2f985f285 100644 --- a/crates/typst/src/layout/flow.rs +++ b/crates/typst/src/layout/flow.rs @@ -46,7 +46,23 @@ impl LayoutMultiple for Packed { bail!(self.span(), "cannot expand into infinite height"); } - let mut layouter = FlowLayouter::new(regions, styles); + // Check whether we have just a single multiple-layoutable element. In + // that case, we do not set `expand.y` to `false`, but rather keep it at + // its original value (since that element can take the full space). + // + // Consider the following code: `block(height: 5cm, pad(10pt, align(bottom, ..)))` + // Thanks to the code below, the expansion will be passed all the way + // through the block & pad and reach the innermost flow, so that things + // are properly bottom-aligned. + let mut alone = false; + if let [child] = self.children().as_slice() { + alone = child + .to_packed::() + .map_or(child, |styled| &styled.child) + .can::(); + } + + let mut layouter = FlowLayouter::new(regions, styles, alone); for mut child in self.children().iter() { let outer = styles; let mut styles = styles; @@ -70,8 +86,8 @@ impl LayoutMultiple for Packed { layouter.layout_par(engine, elem, styles)?; } else if let Some(layoutable) = child.with::() { layouter.layout_single(engine, layoutable, styles)?; - } else if child.can::() { - layouter.layout_multiple(engine, child, styles)?; + } else if let Some(layoutable) = child.with::() { + layouter.layout_multiple(engine, child, layoutable, styles)?; } else { bail!(child.span(), "unexpected flow child"); } @@ -179,11 +195,16 @@ impl FlowItem { impl<'a> FlowLayouter<'a> { /// Create a new flow layouter. - fn new(mut regions: Regions<'a>, styles: StyleChain<'a>) -> Self { + fn new(mut regions: Regions<'a>, styles: StyleChain<'a>, alone: bool) -> Self { let expand = regions.expand; - // Disable vertical expansion & root for children. - regions.expand.y = false; + // Disable vertical expansion when there are multiple or not directly + // layoutable children. + if !alone { + regions.expand.y = false; + } + + // Disable root. let root = std::mem::replace(&mut regions.root, false); Self { @@ -340,6 +361,7 @@ impl<'a> FlowLayouter<'a> { &mut self, engine: &mut Engine, child: &Content, + layoutable: &dyn LayoutMultiple, styles: StyleChain, ) -> SourceResult<()> { // Temporarily delegerate rootness to the columns. @@ -368,7 +390,7 @@ impl<'a> FlowLayouter<'a> { // Layout the block itself. let sticky = BlockElem::sticky_in(styles); - let fragment = child.layout(engine, styles, self.regions)?; + let fragment = layoutable.layout(engine, styles, self.regions)?; for (i, mut frame) in fragment.into_iter().enumerate() { // Find footnotes in the frame. diff --git a/crates/typst/src/layout/mod.rs b/crates/typst/src/layout/mod.rs index 23a08c5f1..0fd8e6b10 100644 --- a/crates/typst/src/layout/mod.rs +++ b/crates/typst/src/layout/mod.rs @@ -77,7 +77,7 @@ use crate::eval::Tracer; use crate::foundations::{category, Category, Content, Scope, StyleChain}; use crate::introspection::{Introspector, Locator}; use crate::model::Document; -use crate::realize::{realize_block, realize_root, Arenas}; +use crate::realize::{realize_doc, realize_flow, Arenas}; use crate::World; /// Arranging elements on the page in different ways. @@ -207,7 +207,7 @@ impl LayoutRoot for Content { tracer, }; let arenas = Arenas::default(); - let (document, styles) = realize_root(&mut engine, &arenas, content, styles)?; + let (document, styles) = realize_doc(&mut engine, &arenas, content, styles)?; document.layout_root(&mut engine, styles) } @@ -258,14 +258,16 @@ impl LayoutMultiple for Content { ); } + // If we are in a `PageElem`, this might already be a realized flow. + if let Some(flow) = content.to_packed::() { + return flow.layout(&mut engine, styles, regions); + } + + // Layout the content by first turning it into a `FlowElem` and then + // layouting that. let arenas = Arenas::default(); - let (realized, styles) = - realize_block(&mut engine, &arenas, content, styles)?; - realized.with::().unwrap().layout( - &mut engine, - styles, - regions, - ) + let (flow, styles) = realize_flow(&mut engine, &arenas, content, styles)?; + flow.layout(&mut engine, styles, regions) } let fragment = cached( diff --git a/crates/typst/src/realize/mod.rs b/crates/typst/src/realize/mod.rs index 98b5c1271..4679a61cb 100644 --- a/crates/typst/src/realize/mod.rs +++ b/crates/typst/src/realize/mod.rs @@ -12,9 +12,7 @@ mod process; pub use self::arenas::Arenas; pub use self::behaviour::{Behave, BehavedBuilder, Behaviour}; -pub use self::process::{process, processable}; - -use std::borrow::Cow; +pub use self::process::process; use std::mem; @@ -36,9 +34,10 @@ use crate::model::{ use crate::syntax::Span; use crate::text::{LinebreakElem, SmartQuoteElem, SpaceElem, TextElem}; -/// Realize into an element that is capable of root-level layout. -#[typst_macros::time(name = "realize root")] -pub fn realize_root<'a>( +/// Realize into a `DocumentElem`, an element that is capable of root-level +/// layout. +#[typst_macros::time(name = "realize doc")] +pub fn realize_doc<'a>( engine: &mut Engine, arenas: &'a Arenas<'a>, content: &'a Content, @@ -47,30 +46,21 @@ pub fn realize_root<'a>( let mut builder = Builder::new(engine, arenas, true); builder.accept(content, styles)?; builder.interrupt_page(Some(styles), true)?; - let (doc, trunk) = builder.doc.unwrap().finish(); - Ok((doc, trunk)) + Ok(builder.doc.unwrap().finish()) } -/// Realize into an element that is capable of block-level layout. -#[typst_macros::time(name = "realize block")] -pub fn realize_block<'a>( +/// Realize into a `FlowElem`, an element that is capable of block-level layout. +#[typst_macros::time(name = "realize flow")] +pub fn realize_flow<'a>( engine: &mut Engine, arenas: &'a Arenas<'a>, content: &'a Content, styles: StyleChain<'a>, -) -> SourceResult<(Cow<'a, Content>, StyleChain<'a>)> { - // These elements implement `Layout` but still require a flow for - // proper layout. - if content.can::() && !processable(engine, content, styles) { - return Ok((Cow::Borrowed(content), styles)); - } - +) -> SourceResult<(Packed, StyleChain<'a>)> { let mut builder = Builder::new(engine, arenas, false); builder.accept(content, styles)?; builder.interrupt_par()?; - - let (flow, trunk) = builder.flow.finish(); - Ok((Cow::Owned(flow.pack()), trunk)) + Ok(builder.flow.finish()) } /// Builds a document or a flow element from content. diff --git a/crates/typst/src/realize/process.rs b/crates/typst/src/realize/process.rs index 6ddb493d6..4212ecb4b 100644 --- a/crates/typst/src/realize/process.rs +++ b/crates/typst/src/realize/process.rs @@ -31,15 +31,6 @@ enum ShowStep<'a> { Builtin, } -/// Returns whether the `target` element needs processing. -pub fn processable<'a>( - engine: &mut Engine, - target: &'a Content, - styles: StyleChain<'a>, -) -> bool { - verdict(engine, target, styles).is_some() -} - /// Processes the given `target` element when encountering it during realization. pub fn process( engine: &mut Engine, diff --git a/tests/ref/grid-cell-override.png b/tests/ref/grid-cell-override.png index d6f37d632f7b06fb79d8b27049e3b69329b66747..a38efca5752ad196e44b9783101625d9e9434e0a 100644 GIT binary patch delta 1811 zcmV+u2kiLT8`B$*BmtVSCAJ2Cc~K96V!(J20^-Qa6f`WPwK*vjm*q>C;g(G09SPSg ztPfsue{Q@{D_JmZTD82A0a!~g7> zJ7;5iT-ylz zVE!5Ma25j_euke%+ab_@+OP<;Ku=!KJHNP9yZPWRE1vW=7S^8ZUc1BcMfYrcb=?tL zWl~z+6PnM>ulvf|h-tYvui+cZ7fo*Zu3+CKr4Hq2ffi_i7U=N}8m%(@U;=F%^rv}Q zc!nSc7ihDfF+)C-la3}spbdgXenH`%+nL^Kfi?)5(?Z&OIc8*k4g&RSfi?mfQ}8`u zXLZcE(Q*m&*n=iraJ=H0-E*3i9}|TUjzDW2Ezklj&;l*c0xi&^1kI!?JZ{-6AguHd zG)|c;qJ0axEiDPnrPE)rJ|WIS&G1Pj4n4a2OP{c#QMcDXgW@@R&EK8Rb(D# zT4cmozZR7kRH${dHY@@y&;l*c0xi&!2Q=jlfi@1Bsn+a&o}>jg4w}9Wrs`8E6=;K? z8L|FRD3gCz#>Wb@LC`eNa63~}B75LMA<#xZbLQ|$c)H#@+36iwvNbjUnj@8(qy&2J z+?KHHs7QJq1$yjfW!)}aFhIHpcZd-bxdd7p7J(M%$pyOl*p0`w9y_pMx3`he(BD|q zY5AfXpL=hA`JpS8KyNyFy`-kEsjAc4KrOs(OSk2VF5mh|*}=b*I+UXYTA&45pvO08 zW?e9tT%e7EW;_V3QZ(TSv~h_t-BOhC1ll0zlLa}nrO^wR7ZWAW209{o#S!OsS#e5OJqX(1^q8lN0<28Z&+d(zrbpFQg_S$Yy)SZuorhe0=w9 zg8m>kW7)m4F8gv0%ZdD~_Ib&JwON3^uqY1^95Z)wqa!UBmH5MY9f7I;K%?&K4ohYK zC@CO+T`*nR`H0aUqY$it#$f@8@}DJz%yRM}XnHuQ=D5O2Jm>g@ooV&_+BP4CyHXSR zUWv!!g3M$08)zPS>5&l(UvnkO3<4s$veFz;tsT(hW%oJEcg)|JuRy!D0(Hp=*xdH! zWpT#w-y_9{gfZ@5#y@KSJ4Gcfh_%)x{Hp;bY>8?M3N(%?)Lm9&l)Xn_`Jfi?qrZTGe8ZGEdYA10oE zs6Ogd#5e!Abo*zPFS@Yy)PtRuErG7@y;-`fY3h`Fb}w1kyQapg2-Sc6T4lTCi#Aqu zRUE!*HFe8pmBgjM8hK*F^52F!y?cEJ$XUz>KkaO>bP27 z?rkit={vrr#_~n?KmBrL&vi?n%ip~+YsZD;rfCgWfX#L%Og!W#Vbg9FC6VRj% zffi_i7U+ot8twHPnJJDG`TL>}?->|Pf!H?aiUWbN)<8vvZ$WdM5jSlbLVM?9d0eo6 zL9RD?L-JgI4^|z->};*04TIixCQyGaP*^F@hCwf>4Xo}8H2*Bn z+8GM;_yoL?BmtqZCAJ2CL6k!vC=xG0fE?b2pkV>6%}J@aEYUE-mQ3Xx5!W)U z4`i*(DX>|y%_fGmY?{?b=W0uuS>$F`Yi%uOzRj2QrS+jc^_yor%-un*(E^vT`+A5P5u^f2OK z|5UW|LDz#pKsy#V&(4T;%Gm-vJkYd;(&7%pp@7C1g+ewCG|JJ#290CQiM$Nb$WTCI z>p|Zz-c$m8m#M?a9(PO~T6GLNka@B12R>MnJ-Dt12ThW}REE2vKo2k2)y9Me*ERw_ zn12S{oW;O~|Kb19b_le89#{lgpvN!h&7WVdU9;!sMNhgLb83%uE#GMQq}x}$T5-Tu znUt3I*yg^hx-Z?0@RoD;H+*CHr14Fsb9bIs>QIgrXn_`JfxZoB%sQ|m!MT%f#SX~B(yrmusk`cz5< z+8}5~tbZ6t<>%t)NP#v8ng$v!XNpQ>4_qh&+6ZVgov-vy*Lx>Dxjjv`#s)yMrBX91 zmfkz3B`iHGl%7X{9{E{WH;eOWWOX{kh`&n;1X>R)0xi(v3v~6NtB zM>l9@T`-tjppAoOJP7(bn(zeLxI`H_IAuJ6HVFDyZpQx16vjVghldHYLC^>~Pv&P5 z6){ox6AH8u(9FkTZ^bcOpgb+mMkLCc6K3w{Z`JL84y2-3mPA?WXn_`Jffi_i7HEOK zOVBhG;?0Hc-CL;%yZQ%mGo^->L%iT^g2p(#K0el)pfTfTAdS;g@j_x8f@~hocp5%a zn1%1YP0;UWrYyKO;({mVupG@vYa8GcMcWFX&(6(e{y8&uF%7d^RN{;Eddhts1dY1S z@xA+hy(pJ-fhk+?PmKN;g~Z|}NFgHO6|qs6;jsp=Q&i$aj=>;*sccDfq>4&fM+>w-3$#EBv_K2=mPX@S!ia7QvWn6 zhyrZ{GzN~2*Bw>EElF_#ZKSAF9T&rT!!Z~v@lR7xN$Y5V7HEMMXfvRfcU?|j-?LVs}Ybn_1-8$Pvs(mA!qAMChb33UCDYsCwiCQi6#+x*2xmesfwf%>mrt8BA; z(#ERJ@_m=ArVjjFlsasHo;^jN1zMnug2ulJ_xWJZS?LAPTUNG3PMS#b#^?dfi`kSg zlNp8wGE?X<>Gp<`u*TQp)0fz|_yKnwKv1^r^r zjh3qROJ!y5#=M%I!^>(cpLEyLFIRS7u>`v8-HQ<$&&D@>>uyZm^oy_cH~SHP*l~W` zr4Cm>lR5-ipaoi>#}a6?*KedI1f|H|6$JR5fzcF*ZG$e~?JI5dmA88qG}{?blO`dw z5B^ye|mRhAdprcYeo}&{dhhXj(44ef7T37TK2c0&c zp9Wvh9|hV3Xxw!|CQLvM72F|zO%0pe5I@6(RR=LWUF&GWpx2-D)%W@GDh1jw==rt2 zrJcU!p9ES@h5|i0L35_k4M(>=^QOCz*m%kn(2u@tYlKs0?_X;_y4rT)rn~Xf{>!bO zUAKJFy2IDDesN<&LF>5vA#f^Ju~k-GVVMw?L0EN_#$ zJ2B)sFyJ~d;5jhgIWgZkFx)sU**GuSH!j&XFWEOO)Hg2GHZ9aPEYp8BF4HwE&^0X0 zG%H|WV9GNpUteFyGb+R~DZ4Kxx-TcWFDJDwCbKOivMnXAEG4WfB&#bVsw*U@DkG&T zBcmxIqA4PwDI!ZtOP?qqnONoPZSVM6A()i5J?gbLJSuGkF78Glv5k2*fd89&&afWrlT`a4z& z>}=1N&;qx$myOzWz&%x(-f`M|ZlM-fB&5W#j)8%Jfq{R4fq{X6fq{X6fq_qB4g}cj zSXHZ>(c5aJ{d=b2==2!5z{?mbHAFFzM?}}&v8H(PM8xnu!~4Ko%p(vEy{7(B0*78x z_r5ci2@DKu@yxaNRSg_^=K90#6s~Yw!9P9lfU`vlY@gNisPh)wdf;b%5n=F$IZd#; zJCiRLKQ({3m|qKA-R$vrUFBYHWwKg$?7bLSb9@QbzZ)J>3OhyqVYYZ3bPLBpkxE#6 z-WU*PuvqC=3Xdr2lfR}h==V&Ps$R#BUpHYd>QV18R~i%kdTn*c^Kq&7}akU z&}0uPi03DHg6hRz-am9Z&>ZvFmx`$%#V6WH} zuyVlBdxxX<-r?xI?eTFTgcn1OgzS==$z7i33;dGZ%+5^qe}stW@I@v&<$SlCb}Bz= z8BQMZ%9-t6JFT9y3_HDsocY|a(^3R*h{0mt!V12fSNd5Cob)rHOAGwCxS(GPT$lc4 zKnwh%D!nP;AeevU1Z=I6D%)!1qEgk?DLceI@EZnT}sBN%_lBchj9Bfd%t>>Aees52*X z^}sg=4H^EM<#v0bzI!~0m({|}=SBUL+9>|0yh9VqTd;2PWs5PmTi-0Wt!AUoll zA$i}sbM;Ji=j`s8d=W%M=iQ~^8&-OM;4v+o*8+y4ybV_B^qH2EKLds@?}(M&9g4B~ zXy6M9Up=+3h7(fq^}x9@a$gIamNoG~2kdZ*`=bt6YBLLS*iOK~g@5=qjd_bz!B1Bs zjYUPOf*&nLm;(j|zHsn&pU2ono+|kL;S*y`H+ee&hYbAknI5<(-W9I{zP*rtQIn+u zj@j0AkNaB^49ShCCuPYL%Qy9>o=ZU{HX~X5d5#M zyrd%ePi1A%|6597SDd6D{FV8!yV-NkRl+aCvE>q(?h~2nReO)!OZQIT_BEw&!Tv8f zfxA~!!m+!JB84(DAa|DARKnx?)n#3yzqi&adYbKu_p!}xw~5$zaxsn~!8isH5fKp) d5fKrEM8}XC{+EtIHg*62002ovPDHLkV1fX1ZFc|w delta 958 zcmV;v13~=K2lNM!B!AaXOjJex|Nrgn?d+9>|O3;*I}(B@+ZI3kehy6d(};6B830 z4+9Yqe-Rc70t*WZ6b1zq1q2fX1r7%R1_lNS0|NyE00RO50s#R50RaF204Il5`v3p| z*hxe|RCwC$+SN}SK^(wwTFTU&%F!0;Lfz5B-QC^Y-CYj11CBoy5?*#MJaC)anE>DK z!zJ_d$?jxtcaon65s}$lDt&0A*EZeKdfR2#f6Lxrq%MbUIUV6Le0j@aq+k2GWxY4> z8HL4(U1&HlwNMS5XBm5?1WwPM`lAB&pRi2)RdU6(S;e_LPQdPk!yFsh?4`2c538Qq zygX&WZh2LAj}4O|k}5vKxvwwPIytpfJj ze^j-{eQinqmB5yuFFePh}_VDqPX)!#PB}D`@kH`f!zfMI3H7G!9RDLj;YLL0s{k|7XH5D^vxv; z4s`zJ;_Y;PVZXE=YT#b~Dkbo{QAM}9e`q$@RQN?kY;^pmrwIvBFR$w0uLI^@arp!B zZST35>AxO4c}pgISKL`E7hGrri#9TOh_mMb;>lS4G zf!yED5h7BIw}@-=WisKx-ISQ>o+oQ7@r?yHCBWKze0_b6emR%}0|NsCGmgPHAO;Z; g5fKp)5fLfr5GDI#vgP!Wvj6}907*qoM6N<$g86BX2><{9 diff --git a/tests/ref/place-float-columns.png b/tests/ref/place-float-columns.png index 97065b68fe919f94f70ec8184c89922290b6b338..5bc50c46e03e4de6fec7014146f5bbdc088f077d 100644 GIT binary patch literal 28346 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 VShQy_{x|>t002ovPDHLkV1kE&QHTHl diff --git a/tests/ref/table-cell-override.png b/tests/ref/table-cell-override.png index d6f37d632f7b06fb79d8b27049e3b69329b66747..a38efca5752ad196e44b9783101625d9e9434e0a 100644 GIT binary patch delta 1811 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