@react-x11/components 0.13.0 → 0.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/dist/html/controls.d.ts +29 -2
  2. package/dist/html/controls.d.ts.map +1 -1
  3. package/dist/html/controls.js +70 -2
  4. package/dist/html/controls.js.map +1 -1
  5. package/dist/html/css/cascade.d.ts +42 -1
  6. package/dist/html/css/cascade.d.ts.map +1 -1
  7. package/dist/html/css/cascade.js +336 -16
  8. package/dist/html/css/cascade.js.map +1 -1
  9. package/dist/html/css/color.d.ts +18 -0
  10. package/dist/html/css/color.d.ts.map +1 -1
  11. package/dist/html/css/color.js +27 -0
  12. package/dist/html/css/color.js.map +1 -1
  13. package/dist/html/css/parse.d.ts +18 -4
  14. package/dist/html/css/parse.d.ts.map +1 -1
  15. package/dist/html/css/parse.js +66 -28
  16. package/dist/html/css/parse.js.map +1 -1
  17. package/dist/html/css/shapes.d.ts +44 -0
  18. package/dist/html/css/shapes.d.ts.map +1 -0
  19. package/dist/html/css/shapes.js +194 -0
  20. package/dist/html/css/shapes.js.map +1 -0
  21. package/dist/html/css/style.d.ts +128 -15
  22. package/dist/html/css/style.d.ts.map +1 -1
  23. package/dist/html/css/style.js +547 -144
  24. package/dist/html/css/style.js.map +1 -1
  25. package/dist/html/css/transform.d.ts +85 -0
  26. package/dist/html/css/transform.d.ts.map +1 -0
  27. package/dist/html/css/transform.js +425 -0
  28. package/dist/html/css/transform.js.map +1 -0
  29. package/dist/html/css/ua.d.ts.map +1 -1
  30. package/dist/html/css/ua.js +14 -2
  31. package/dist/html/css/ua.js.map +1 -1
  32. package/dist/html/css/values.d.ts +4 -0
  33. package/dist/html/css/values.d.ts.map +1 -1
  34. package/dist/html/css/values.js.map +1 -1
  35. package/dist/html/fonts.d.ts +55 -5
  36. package/dist/html/fonts.d.ts.map +1 -1
  37. package/dist/html/fonts.js +284 -23
  38. package/dist/html/fonts.js.map +1 -1
  39. package/dist/html/layout/axes.d.ts +14 -0
  40. package/dist/html/layout/axes.d.ts.map +1 -0
  41. package/dist/html/layout/axes.js +28 -0
  42. package/dist/html/layout/axes.js.map +1 -0
  43. package/dist/html/layout/block.d.ts +104 -12
  44. package/dist/html/layout/block.d.ts.map +1 -1
  45. package/dist/html/layout/block.js +410 -39
  46. package/dist/html/layout/block.js.map +1 -1
  47. package/dist/html/layout/boxes.d.ts +72 -1
  48. package/dist/html/layout/boxes.d.ts.map +1 -1
  49. package/dist/html/layout/boxes.js +40 -2
  50. package/dist/html/layout/boxes.js.map +1 -1
  51. package/dist/html/layout/cache.d.ts +1 -1
  52. package/dist/html/layout/cache.d.ts.map +1 -1
  53. package/dist/html/layout/cache.js +6 -0
  54. package/dist/html/layout/cache.js.map +1 -1
  55. package/dist/html/layout/css-grid.d.ts.map +1 -1
  56. package/dist/html/layout/css-grid.js +144 -24
  57. package/dist/html/layout/css-grid.js.map +1 -1
  58. package/dist/html/layout/flex.d.ts.map +1 -1
  59. package/dist/html/layout/flex.js +585 -85
  60. package/dist/html/layout/flex.js.map +1 -1
  61. package/dist/html/layout/inline.d.ts +3 -0
  62. package/dist/html/layout/inline.d.ts.map +1 -1
  63. package/dist/html/layout/inline.js +144 -54
  64. package/dist/html/layout/inline.js.map +1 -1
  65. package/dist/html/layout/multicol.d.ts +42 -0
  66. package/dist/html/layout/multicol.d.ts.map +1 -0
  67. package/dist/html/layout/multicol.js +897 -0
  68. package/dist/html/layout/multicol.js.map +1 -0
  69. package/dist/html/layout/shaping.d.ts +7 -0
  70. package/dist/html/layout/shaping.d.ts.map +1 -1
  71. package/dist/html/layout/shaping.js +25 -20
  72. package/dist/html/layout/shaping.js.map +1 -1
  73. package/dist/html/layout/table.d.ts.map +1 -1
  74. package/dist/html/layout/table.js +97 -31
  75. package/dist/html/layout/table.js.map +1 -1
  76. package/dist/html/node.d.ts +4 -0
  77. package/dist/html/node.d.ts.map +1 -1
  78. package/dist/html/node.js +319 -47
  79. package/dist/html/node.js.map +1 -1
  80. package/dist/html/paint.d.ts +83 -5
  81. package/dist/html/paint.d.ts.map +1 -1
  82. package/dist/html/paint.js +1474 -217
  83. package/dist/html/paint.js.map +1 -1
  84. package/dist/html/svg.d.ts +39 -9
  85. package/dist/html/svg.d.ts.map +1 -1
  86. package/dist/html/svg.js +482 -37
  87. package/dist/html/svg.js.map +1 -1
  88. package/dist/html/widgets.js +87 -7
  89. package/dist/html/widgets.js.map +1 -1
  90. package/dist/html/woff2.d.ts +14 -0
  91. package/dist/html/woff2.d.ts.map +1 -0
  92. package/dist/html/woff2.js +608 -0
  93. package/dist/html/woff2.js.map +1 -0
  94. package/dist/maps/controller.d.ts +17 -1
  95. package/dist/maps/controller.d.ts.map +1 -1
  96. package/dist/maps/controller.js +27 -7
  97. package/dist/maps/controller.js.map +1 -1
  98. package/dist/richtext/node.d.ts +8 -1
  99. package/dist/richtext/node.d.ts.map +1 -1
  100. package/dist/richtext/node.js +5 -1
  101. package/dist/richtext/node.js.map +1 -1
  102. package/dist/richtext/runs.d.ts +25 -6
  103. package/dist/richtext/runs.d.ts.map +1 -1
  104. package/dist/richtext/runs.js +240 -24
  105. package/dist/richtext/runs.js.map +1 -1
  106. package/package.json +1 -1
  107. package/src/html/controls.ts +85 -2
  108. package/src/html/css/cascade.ts +366 -8
  109. package/src/html/css/color.ts +29 -0
  110. package/src/html/css/parse.ts +71 -31
  111. package/src/html/css/shapes.ts +239 -0
  112. package/src/html/css/style.ts +652 -147
  113. package/src/html/css/transform.ts +459 -0
  114. package/src/html/css/ua.ts +15 -2
  115. package/src/html/css/values.ts +4 -0
  116. package/src/html/fonts.ts +312 -29
  117. package/src/html/layout/axes.ts +62 -0
  118. package/src/html/layout/block.ts +466 -37
  119. package/src/html/layout/boxes.ts +95 -3
  120. package/src/html/layout/cache.ts +6 -0
  121. package/src/html/layout/css-grid.ts +169 -32
  122. package/src/html/layout/flex.ts +686 -79
  123. package/src/html/layout/inline.ts +149 -55
  124. package/src/html/layout/multicol.ts +977 -0
  125. package/src/html/layout/shaping.ts +27 -18
  126. package/src/html/layout/table.ts +105 -35
  127. package/src/html/node.ts +354 -48
  128. package/src/html/paint.ts +1804 -315
  129. package/src/html/svg.ts +573 -36
  130. package/src/html/widgets.ts +95 -9
  131. package/src/html/woff2.ts +612 -0
  132. package/src/maps/controller.ts +28 -7
  133. package/src/richtext/node.ts +13 -2
  134. package/src/richtext/runs.ts +313 -35
@@ -1 +1 @@
1
- {"version":3,"file":"flex.js","sourceRoot":"","sources":["../../../src/html/layout/flex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flex.js","sourceRoot":"","sources":["../../../src/html/layout/flex.ts"],"names":[],"mappings":"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"}
@@ -142,6 +142,9 @@ export declare function documentOffsetOf(text: LineText, units: number): number;
142
142
  export declare function layoutOffsetOf(text: LineText, doc: number, end?: boolean): number;
143
143
  /** How deep a box is in the tree — an element inside another is deeper. */
144
144
  export declare function depthOf(box: Box): number;
145
+ /** Whether a box is a `<button>` element's: one drawn as the document's,
146
+ * which a replaced control is not. */
147
+ export declare function isButton(box: Box): boolean;
145
148
  /** The same, from the first line box or child: a table's baseline is its
146
149
  * first row's, and so is a table cell's. */
147
150
  export declare function firstBaselineIn(box: Box): number | null;
@@ -1 +1 @@
1
- {"version":3,"file":"inline.d.ts","sourceRoot":"","sources":["../../../src/html/layout/inline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inline.d.ts","sourceRoot":"","sources":["../../../src/html/layout/inline.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,8 @@ import bidiModule from 'bidi-js';
33
33
  import { codePointAtOffset, codeUnitOffsets } from '../../internal/text.js';
34
34
  import { CONTAIN_LAYOUT, INLINE_BEFORE_ABSOLUTE, scrolls, } from '../css/style.js';
35
35
  import { inkColor, isTransparent, resolve } from '../css/values.js';
36
- import { BOX_RAISES, LINE_BOX_RAISES, PADDED_FACES, isOffset, letteredAfter, SHADOWED_TEXT, SHIFTED_LINES, TEXT_RAISES, transformInPlace, } from './boxes.js';
36
+ import { tagOf } from '../dom.js';
37
+ import { BOX_RAISES, GRID_TRACKS, LINE_BOX_RAISES, PADDED_FACES, isOffset, letteredAfter, SHADOWED_TEXT, SHIFTED_LINES, TEXT_RAISES, transformInPlace, } from './boxes.js';
37
38
  import { tableGrid } from './grid.js';
38
39
  /** How a paragraph's lines are fitted to their width, and measured: as a
39
40
  * browser fits them (`FontsLike`'s `fit`). */
@@ -227,13 +228,20 @@ export function layoutInline(block, options) {
227
228
  }
228
229
  return result;
229
230
  }
230
- function cutOf(style, clamp) {
231
+ function cutOf(style, clamp, width) {
231
232
  // the ellipsis a clamp ends in is placed apart (`ellipsized`)
232
233
  if (clamp)
233
234
  return { maxLines: clamp.lines, overflow: 'clip' };
235
+ // `text-overflow` is how the line is drawn where it runs out of its
236
+ // box, and no part of how wide it is (CSS Overflow 3, 5.1): in a box of
237
+ // no width, which shows none of it and is what the box's content is
238
+ // measured in at its least (`MIN_CONTENT_PROBE`), the line is left
239
+ // whole. Cut there, ntk left the ellipsis alone, and a button whose
240
+ // label is a `truncate` span was measured as wide as one
234
241
  if (style.textOverflow === 'ellipsis' &&
235
242
  !wraps(style) &&
236
- style.overflowX !== 'visible') {
243
+ style.overflowX !== 'visible' &&
244
+ width > 0) {
237
245
  return { maxLines: 1, overflow: 'ellipsis', wrap: false };
238
246
  }
239
247
  return null;
@@ -433,7 +441,7 @@ function linesOf(block, options, items, floatCount) {
433
441
  // line at a time, or the lines after the first were lost. A clamp is
434
442
  // the paragraph's, and stays one layout.
435
443
  const clamp = options.clamp;
436
- let cut = cutOf(style, clamp);
444
+ let cut = cutOf(style, clamp, options.width);
437
445
  const perLine = cut !== null && !clamp && hasNewline;
438
446
  // an embedding cannot be cut into chunks
439
447
  if (perLine && !hasControls(items)) {
@@ -1067,6 +1075,8 @@ function linesOf(block, options, items, floatCount) {
1067
1075
  const m = hung.exec(text);
1068
1076
  if (!m)
1069
1077
  break;
1078
+ if (!trailing)
1079
+ placed.trailRun = segment.runs[i];
1070
1080
  trailing = m[0] + trailing;
1071
1081
  if (m[0].length < text.length)
1072
1082
  break;
@@ -1084,6 +1094,7 @@ function linesOf(block, options, items, floatCount) {
1084
1094
  : spaceAdvance(fonts, segment.runs[segment.runs.length - 1]) *
1085
1095
  trailing.length;
1086
1096
  open.x += open.hang;
1097
+ placed.trail = open.hang;
1087
1098
  }
1088
1099
  }
1089
1100
  else if (hung.total)
@@ -1856,6 +1867,25 @@ levels = null) {
1856
1867
  if (!open.texts.length && !open.atomics.length && !open.edges.length) {
1857
1868
  return null;
1858
1869
  }
1870
+ if (open.hang > 0) {
1871
+ // The line ends on the spaces its last text ends on, and they are
1872
+ // removed (CSS Text 3, 4.1.2): the text takes no room for them, and
1873
+ // what was set after them, the end edges of the boxes they are in,
1874
+ // stands where the text's content ends. Left a space past it, a list
1875
+ // item that ended its line was a space wider than its link.
1876
+ for (let i = open.order.length - 1; i >= 0; i -= 1) {
1877
+ const placed = open.order[i];
1878
+ if (placed.kind === 'text') {
1879
+ placed.item.trail = 0;
1880
+ placed.item.trailRun = undefined;
1881
+ break;
1882
+ }
1883
+ if (placed.kind !== 'edge')
1884
+ break;
1885
+ placed.at -= open.hang;
1886
+ placed.item.x -= open.hang;
1887
+ }
1888
+ }
1859
1889
  const reordered = levels
1860
1890
  ? levelPieces(open, levels) ||
1861
1891
  open.order.some((p) => p.kind === 'edge' && needsOrdering(p, rtl))
@@ -2692,7 +2722,19 @@ function atomicRaise(fonts, box, parent) {
2692
2722
  * be after.
2693
2723
  */
2694
2724
  function atomicBaseline(box) {
2695
- const bottom = box.height + box.marginTop + box.marginBottom;
2725
+ const margin = box.height + box.marginTop + box.marginBottom;
2726
+ const button = isButton(box);
2727
+ // A `<button>` with no line in it sits on the bottom of its content box,
2728
+ // not of its margin box: where its label would have sat. No specification
2729
+ // says so and every browser does — Blink gives the element the content
2730
+ // box as the edge its baseline is synthesized from
2731
+ // (`HTMLButtonElement::AdjustStyle`). An icon button drawn of blocks, the
2732
+ // three bars of a menu toggle, stood its padding under the baseline, and
2733
+ // the line it was on was as much taller: GitHub's header, by four pixels.
2734
+ // And so one whose layout containment keeps its label's baseline in.
2735
+ const bottom = button
2736
+ ? margin - box.marginBottom - box.borderBottom - box.padBottom
2737
+ : margin;
2696
2738
  if (box.kind === 'replaced' ||
2697
2739
  // a box that clips sits on its bottom margin edge, for legacy reasons
2698
2740
  // that stop at block containers (CSS Box Alignment 3, 9.2) — and an
@@ -2700,8 +2742,8 @@ function atomicBaseline(box) {
2700
2742
  // sits on its first item's, as it does unclipped. A MediaWiki button
2701
2743
  // is an `overflow: hidden` inline flex box of one icon, and stood its
2702
2744
  // whole height on the baseline, the line under it the strut's descent
2703
- // taller
2704
- (scrolls(box.style) && box.kind !== 'flex') ||
2745
+ // taller. Nor a `<button>`, which sits on its label clipped or not
2746
+ (scrolls(box.style) && box.kind !== 'flex' && !button) ||
2705
2747
  // layout containment keeps its baseline in (CSS Containment 2, 3.3)
2706
2748
  box.style.contain & CONTAIN_LAYOUT) {
2707
2749
  return bottom;
@@ -2715,17 +2757,28 @@ function atomicBaseline(box) {
2715
2757
  : lastBaselineIn(box);
2716
2758
  return baseline === null ? bottom : box.marginTop + (baseline - box.y);
2717
2759
  }
2760
+ /** Whether a box is a `<button>` element's: one drawn as the document's,
2761
+ * which a replaced control is not. */
2762
+ export function isButton(box) {
2763
+ return (box.el !== null && box.kind !== 'replaced' && tagOf(box.el) === 'button');
2764
+ }
2718
2765
  /**
2719
- * A flex container's first baseline, or its last (CSS Flexbox 8.5): that
2720
- * of the first item on its first line that is aligned by its baseline — the
2721
- * last on its last line — or where none is, of its first item, or last,
2722
- * in `order`. An item gives its own, or where it has none, its border
2723
- * box's bottom edge. Not its last child's: an `inline-flex` of a small
2724
- * item and a big one sat on the big one's baseline. Null for a box with no
2725
- * item.
2766
+ * A flex container's baseline, its first (CSS Flexbox 8.5): that of the
2767
+ * first item on its first line that is aligned by its baseline, or where
2768
+ * none is, of its first item, in `order`. An item gives its own, or where
2769
+ * it has none, its border box's bottom edge. Not its last child's: an
2770
+ * `inline-flex` of a small item and a big one sat on the big one's
2771
+ * baseline. Null for a box with no item.
2772
+ *
2773
+ * A grid's is that of its first item in row-major order, by where it was
2774
+ * placed and not where it was written (CSS Grid 1, 10.6).
2726
2775
  */
2727
- function flexBaseline(box, first) {
2728
- let items = [];
2776
+ function flexBaseline(box) {
2777
+ if (box.style.grid) {
2778
+ const item = GRID_TRACKS.get(box)?.first;
2779
+ return item ? itemBaselineOf(item) : null;
2780
+ }
2781
+ const items = [];
2729
2782
  let reordered = false;
2730
2783
  for (const child of box.children) {
2731
2784
  if (child.outOfFlow || child.isFloat)
@@ -2740,15 +2793,10 @@ function flexBaseline(box, first) {
2740
2793
  return null;
2741
2794
  if (reordered)
2742
2795
  items.sort((a, b) => a.style.order - b.style.order);
2743
- if (!first)
2744
- items = items.reverse();
2745
2796
  const style = box.style;
2746
- if (style.flexDirection.startsWith('row') && !style.grid) {
2747
- // a line ends where the next item does not go on along the main axis,
2748
- // which from the last item is where it goes on
2749
- const back = ((style.flexDirection === 'row-reverse') !==
2750
- (style.direction === 'rtl')) !==
2751
- !first;
2797
+ if (style.flexDirection.startsWith('row')) {
2798
+ // a line ends where the next item does not go on along the main axis
2799
+ const back = (style.flexDirection === 'row-reverse') !== (style.direction === 'rtl');
2752
2800
  let last = NaN;
2753
2801
  for (const item of items) {
2754
2802
  if (!Number.isNaN(last) && (back ? item.x >= last : item.x <= last)) {
@@ -2759,20 +2807,19 @@ function flexBaseline(box, first) {
2759
2807
  ? style.alignItems
2760
2808
  : item.style.alignSelf;
2761
2809
  if (align === 'baseline')
2762
- return itemBaselineOf(item, first, style);
2810
+ return itemBaselineOf(item);
2763
2811
  }
2764
2812
  }
2765
- return itemBaselineOf(items[0], first, style);
2813
+ return itemBaselineOf(items[0]);
2766
2814
  }
2767
- /** A flex item's baseline, in document coordinates: its first line's or
2768
- * its last's — its bottom margin edge where it clips what it holds — or
2769
- * where it has none, its border box's bottom edge, which a grid does not
2770
- * take from its item, and has none of its own then (CSS Grid 1, 9). */
2771
- function itemBaselineOf(item, first, container) {
2772
- const found = childBaseline(item, first ? firstBaselineIn : lastBaselineIn);
2773
- if (found !== null)
2774
- return found;
2775
- return container.grid ? null : item.y + item.height;
2815
+ /** A flex item's baseline or a grid item's, in document coordinates: its
2816
+ * first line's, or where it has none, one synthesized from its border
2817
+ * edges, the bottom one (CSS Flexbox 8.5, CSS Grid 1, 10.6). A grid took
2818
+ * none from such an item and had none of its own: a grid of icons stood
2819
+ * its whole height on the baseline, where a browser stands it on the
2820
+ * first icon's bottom edge. */
2821
+ function itemBaselineOf(item) {
2822
+ return childBaseline(item, firstBaselineIn) ?? item.y + item.height;
2776
2823
  }
2777
2824
  /**
2778
2825
  * A table's baseline: its first row's (CSS 2.1 17.5.3), which is the first
@@ -2800,11 +2847,19 @@ function tableBaseline(table) {
2800
2847
  * what overflows it gives its bottom margin edge and no deeper, whatever
2801
2848
  * text it holds (CSS Box Alignment's synthesized baseline). Null where
2802
2849
  * nothing in it has one.
2850
+ *
2851
+ * A flex box or a grid among them gives its first baseline, the one it has
2852
+ * on a line of its own, and a table gives none: what an inline-block takes
2853
+ * from a block-level child in Blink, where only a block container is asked
2854
+ * for its last (`UseLastBaselineForInlineBaseline`), and in Gecko, where a
2855
+ * child is asked for its default one and a table is passed over
2856
+ * (`nsBlockFrame::GetNaturalBaselineBOffset`). Asked for its last, a grid
2857
+ * of an icon, a label and a chevron in a button sat the button on the
2858
+ * chevron, and the line it was on came out shorter than a browser's.
2803
2859
  */
2804
2860
  function lastBaselineIn(box) {
2805
- // a flex box's is its items', in the order it lays them out
2806
2861
  if (box.kind === 'flex')
2807
- return flexBaseline(box, false);
2862
+ return flexBaseline(box);
2808
2863
  if (box.lines?.length) {
2809
2864
  const line = box.lines[box.lines.length - 1];
2810
2865
  return line.y + line.baseline;
@@ -2820,7 +2875,7 @@ function lastBaselineIn(box) {
2820
2875
  * first row's, and so is a table cell's. */
2821
2876
  export function firstBaselineIn(box) {
2822
2877
  if (box.kind === 'flex')
2823
- return flexBaseline(box, true);
2878
+ return flexBaseline(box);
2824
2879
  if (box.lines?.length)
2825
2880
  return box.lines[0].y + box.lines[0].baseline;
2826
2881
  for (const child of box.children) {
@@ -2834,11 +2889,17 @@ function childBaseline(child, inside) {
2834
2889
  if (child.outOfFlow || child.isFloat || child.kind === 'replaced') {
2835
2890
  return null;
2836
2891
  }
2892
+ // a table is passed over for a block's last baseline (`lastBaselineIn`)
2893
+ if (inside === lastBaselineIn && child.kind === 'table')
2894
+ return null;
2837
2895
  // the legacy rule is a block container's last baseline alone (CSS Box
2838
- // Alignment 3, 9.2): its first is its first line's, clipped or not
2896
+ // Alignment 3, 9.2): its first is its first line's, clipped or not —
2897
+ // and a button that clips keeps its label's, here as on a line of its
2898
+ // own (`atomicBaseline`)
2839
2899
  if (inside === lastBaselineIn &&
2840
2900
  child.kind !== 'flex' &&
2841
- scrolls(child.style)) {
2901
+ scrolls(child.style) &&
2902
+ !isButton(child)) {
2842
2903
  return child.y + child.height + child.marginBottom;
2843
2904
  }
2844
2905
  return inside(child);
@@ -3419,6 +3480,8 @@ const RUN_STYLE = [
3419
3480
  'underlineOffset',
3420
3481
  'underlineThickness',
3421
3482
  'strike',
3483
+ 'strikeStyle',
3484
+ 'strikeThickness',
3422
3485
  ];
3423
3486
  /**
3424
3487
  * A run of text in `style` rather than `own`, the style it was made in:
@@ -3938,26 +4001,53 @@ export function runFor(text, style) {
3938
4001
  // colours of the elements that set them (`decorate`)
3939
4002
  if (style.underline) {
3940
4003
  run.underline = style.underline;
3941
- // CSS's five rule styles and SGR 4's five are the same set under two
3942
- // names; richtext speaks SGR's, so `solid` is `single` and `wavy` is
3943
- // `curly`. The other three are spelled identically.
3944
- run.underlineStyle =
3945
- style.underlineStyle === 'wavy'
3946
- ? 'curly'
3947
- : style.underlineStyle === 'solid'
3948
- ? 'single'
3949
- : style.underlineStyle;
3950
- if (style.underlineOffset !== null) {
3951
- run.underlineOffset = style.underlineOffset;
4004
+ run.underlineStyle = ruleStyle(style.underlineStyle);
4005
+ // The band the rule is drawn in: as thick as the box that set it made
4006
+ // it (`usedThickness`), and as far under the baseline as that box said.
4007
+ // `auto` leaves how far to the user agent, at or under the baseline
4008
+ // (CSS Text Decoration 4, 2.7 and 2.8), and it is half the rule's
4009
+ // thickness, a pixel at the least — Blink's gap, which keeps a thick
4010
+ // rule as clear of its letters as a thin one. A length is from the
4011
+ // baseline itself.
4012
+ const band = style.underlineThickness ?? 1;
4013
+ const top = style.underlineOffset === null
4014
+ ? Math.max(1, Math.ceil(band / 2))
4015
+ : Math.round(style.underlineOffset);
4016
+ if (run.underlineStyle === 'dotted' || run.underlineStyle === 'dashed') {
4017
+ // dots and dashes are a stroke along the band's middle, its width the
4018
+ // nearest whole pixel to the band's: 1.6 is two, where a solid rule's
4019
+ // is the one pixel it fills
4020
+ const width = Math.round(band);
4021
+ run.underlineThickness = width;
4022
+ run.underlineOffset =
4023
+ top + Math.floor(Math.max(band / 2, 0.5)) - Math.floor(width / 2);
3952
4024
  }
3953
- if (style.underlineThickness !== null) {
3954
- run.underlineThickness = style.underlineThickness;
4025
+ else {
4026
+ run.underlineThickness = Math.floor(band);
4027
+ run.underlineOffset = top;
3955
4028
  }
3956
4029
  }
3957
- if (style.lineThrough)
4030
+ if (style.lineThrough) {
3958
4031
  run.strike = style.lineThrough;
4032
+ run.strikeStyle = ruleStyle(style.lineThroughStyle);
4033
+ // as thick as the box that set it made it, on whole pixels as the
4034
+ // underline's is: a solid rule fills the ones it covers, and dots and
4035
+ // dashes are the nearest whole pixel wide. Where it is drawn is each
4036
+ // run's own face's to say (`paintRunRules`).
4037
+ const band = style.lineThroughThickness ?? 1;
4038
+ run.strikeThickness =
4039
+ run.strikeStyle === 'dotted' || run.strikeStyle === 'dashed'
4040
+ ? Math.round(band)
4041
+ : Math.floor(band);
4042
+ }
3959
4043
  return run;
3960
4044
  }
4045
+ /** A CSS rule style as richtext names it. CSS's five and SGR 4's five are
4046
+ * the same set under two names; richtext speaks SGR's, so `solid` is
4047
+ * `single` and `wavy` is `curly`. The other three are spelled identically. */
4048
+ function ruleStyle(style) {
4049
+ return style === 'wavy' ? 'curly' : style === 'solid' ? 'single' : style;
4050
+ }
3961
4051
  /**
3962
4052
  * Maps a code-unit offset in text handed to `TextLayout` back to its offset
3963
4053
  * in the document index. The two differ because a layout covers one segment