@@ -503,33 +503,24 @@ class ListNodeWidget extends StatelessWidget {
503
503
case UnorderedListNode (): marker = "• " ; break ;
504
504
case OrderedListNode (: final start): marker = "${start + index }. " ; break ;
505
505
}
506
- return ListItemWidget (marker: marker, nodes: item);
506
+ return TableRow (children: [
507
+ Align (
508
+ alignment: AlignmentDirectional .topEnd,
509
+ child: Text (marker)),
510
+ BlockContentList (nodes: item),
511
+ ]);
507
512
});
513
+
508
514
return Padding (
509
515
padding: const EdgeInsets .only (top: 2 , bottom: 5 ),
510
- child: Column (children: items));
511
- }
512
- }
513
-
514
- class ListItemWidget extends StatelessWidget {
515
- const ListItemWidget ({super .key, required this .marker, required this .nodes});
516
-
517
- final String marker;
518
- final List <BlockContentNode > nodes;
519
-
520
- @override
521
- Widget build (BuildContext context) {
522
- return Row (
523
- mainAxisAlignment: MainAxisAlignment .start,
524
- crossAxisAlignment: CrossAxisAlignment .baseline,
525
- textBaseline: localizedTextBaseline (context),
526
- children: [
527
- SizedBox (
528
- width: 20 , // TODO handle long numbers in <ol>, like https://github.com/zulip/zulip/pull/25063
529
- child: Align (
530
- alignment: AlignmentDirectional .topEnd, child: Text (marker))),
531
- Expanded (child: BlockContentList (nodes: nodes)),
532
- ]);
516
+ child: Table (
517
+ defaultVerticalAlignment: TableCellVerticalAlignment .baseline,
518
+ textBaseline: localizedTextBaseline (context),
519
+ columnWidths: const < int , TableColumnWidth > {
520
+ 0 : IntrinsicColumnWidth (),
521
+ 1 : FlexColumnWidth (),
522
+ },
523
+ children: items));
533
524
}
534
525
}
535
526
0 commit comments