]> gitweb.factorcode.org Git - factor.git/commitdiff
ui.gadgets.paragraphs: need to merge height/metrics.
authorJohn Benediktsson <mrjbq7@gmail.com>
Fri, 28 Feb 2020 05:53:39 +0000 (21:53 -0800)
committerJohn Benediktsson <mrjbq7@gmail.com>
Fri, 28 Feb 2020 05:53:39 +0000 (21:53 -0800)
Sometimes cap-height is false and we handle that differently.

basis/ui/baseline-alignment/baseline-alignment.factor
basis/ui/gadgets/paragraphs/paragraphs.factor

index 37fcbf1c63e4c37e7a94f81b33f06ef8d824f1f1..e65d4c64fb4573570fe74a9a55b389591beae34d 100644 (file)
@@ -99,3 +99,7 @@ PRIVATE>
 
 : measure-height ( children sizes -- height )
     (measure-metrics) [ combine-metrics + ] [ 2drop ] if* ;
+
+: measure-height-metrics ( children sizes -- height ascent descent )
+    (measure-metrics) [ dup ] 3dip
+    [ combine-metrics ] keep [ [ + nip ] 2keep ] when ;
index 6ed04ceae1b0b8df3c6850f6207cd004a321abea..8483ac40a7dee29fe180839e5375a51ccd5c5c66 100644 (file)
@@ -37,7 +37,7 @@ TUPLE: line words width height baseline ;
 
 : <line> ( words -- line )
     [ ] [ line-width ] [ [ key>> ] map dup pref-dims ] tri
-    measure-metrics [ + ] 2keep drop line boa ;
+    measure-height-metrics drop line boa ;
 
 : wrap-paragraph ( paragraph -- wrapped-paragraph )
     [ children>> [ gadget>word ] map ] [ margin>> ] bi