Skip to content

Commit 65c1fc2

Browse files
committed
[core] Restore support for [email protected]
1 parent e54aa9d commit 65c1fc2

File tree

8 files changed

+36
-98
lines changed

8 files changed

+36
-98
lines changed

packages/core/lib/src/core_helpers.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ export 'widgets/css_sizing.dart';
1515
export 'widgets/horizontal_margin.dart';
1616
export 'widgets/html_details.dart';
1717
export 'widgets/html_flex.dart';
18-
export 'widgets/html_layout_builder.dart';
1918
export 'widgets/html_list_item.dart';
2019
export 'widgets/html_list_marker.dart';
2120
export 'widgets/html_ruby.dart';

packages/core/lib/src/core_widget_factory.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ class WidgetFactory extends WidgetFactoryResetter with AnchorWidgetFactory {
233233
TextBaseline textBaseline = TextBaseline.alphabetic,
234234
TextDirection textDirection = TextDirection.ltr,
235235
}) {
236-
return HtmlLayoutBuilder(
236+
return LayoutBuilder(
237237
builder: (_, bc) {
238238
Widget built = HtmlFlex(
239239
crossAxisAlignment: crossAxisAlignment,

packages/core/lib/src/internal/ops/tag_table.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ class TagTable {
8383
? tryParseCssLength(borderSpacingExpression)
8484
: null;
8585

86-
final layoutBuilder = HtmlLayoutBuilder(
86+
final layoutBuilder = LayoutBuilder(
8787
builder: (context, bc) {
8888
final resolved = tableTree.inheritanceResolvers.resolve(context);
8989
Widget built = ValignBaselineContainer(

packages/core/lib/src/widgets/html_flex.dart

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -327,6 +327,26 @@ extension on MainAxisAlignment {
327327
}
328328
}
329329

330+
double? _getChildBaseline(
331+
RenderBox child,
332+
BoxConstraints constraints,
333+
TextBaseline baseline,
334+
) {
335+
// TODO: use ChildLayoutHelper.getBaseline when minimum Flutter version >= 3.24
336+
assert(!child.debugNeedsLayout);
337+
assert(child.constraints == constraints);
338+
return child.getDistanceToBaseline(baseline, onlyReal: true);
339+
}
340+
341+
double? _getChildBaselineDry(
342+
RenderBox child,
343+
BoxConstraints constraints,
344+
TextBaseline baseline,
345+
) {
346+
// TODO: use ChildLayoutHelper.getDryBaseline when minimum Flutter version >= 3.24
347+
return child.getDryBaseline(constraints, baseline);
348+
}
349+
330350
class RenderHtmlFlex extends RenderBox
331351
with
332352
ContainerRenderObjectMixin<RenderBox, FlexParentData>,
@@ -544,7 +564,7 @@ class RenderHtmlFlex extends RenderBox
544564
? BoxConstraints(maxWidth: extent)
545565
: BoxConstraints(maxHeight: extent),
546566
layoutChild: layoutChild,
547-
getBaseline: ChildLayoutHelper.getDryBaseline,
567+
getBaseline: _getChildBaselineDry,
548568
).axisSize.crossAxisExtent;
549569
}
550570
}
@@ -728,7 +748,7 @@ class RenderHtmlFlex extends RenderBox
728748
final _LayoutSizes sizes = _computeSizes(
729749
constraints: constraints,
730750
layoutChild: ChildLayoutHelper.dryLayoutChild,
731-
getBaseline: ChildLayoutHelper.getDryBaseline,
751+
getBaseline: _getChildBaselineDry,
732752
);
733753

734754
if (_isBaselineAligned) {
@@ -816,7 +836,7 @@ class RenderHtmlFlex extends RenderBox
816836
return _computeSizes(
817837
constraints: constraints,
818838
layoutChild: ChildLayoutHelper.dryLayoutChild,
819-
getBaseline: ChildLayoutHelper.getDryBaseline,
839+
getBaseline: _getChildBaselineDry,
820840
).axisSize.toSize(direction);
821841
}
822842

@@ -1081,7 +1101,7 @@ class RenderHtmlFlex extends RenderBox
10811101
final _LayoutSizes sizes = _computeSizes(
10821102
constraints: constraints,
10831103
layoutChild: ChildLayoutHelper.layoutChild,
1084-
getBaseline: ChildLayoutHelper.getBaseline,
1104+
getBaseline: _getChildBaseline,
10851105
);
10861106

10871107
final double crossAxisExtent = sizes.axisSize.crossAxisExtent;

packages/core/lib/src/widgets/html_layout_builder.dart

Lines changed: 0 additions & 85 deletions
This file was deleted.

packages/core/lib/src/widgets/html_list_marker.dart

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
// TODO: remove lint ignore when our minimum Flutter version >= 3.19
2+
// ignore: unnecessary_import
3+
import 'dart:ui';
4+
15
import 'package:flutter/rendering.dart';
26
import 'package:flutter/widgets.dart';
37

packages/core/pubspec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
name: flutter_widget_from_html_core
2-
version: 0.17.0
2+
version: 0.16.1
33
description: Flutter package to render html as widgets that focuses on correctness and extensibility.
44
homepage: https://github.com/daohoangson/flutter_widget_from_html/tree/master/packages/core
55

66
environment:
7-
flutter: ">=3.32.0"
7+
flutter: ">=3.22.0"
88
sdk: ">=3.4.0 <4.0.0"
99

1010
dependencies:

packages/core/test/tag_li_test.dart

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1001,17 +1001,17 @@ Future<void> main() async {
10011001
useExplainer: false,
10021002
);
10031003

1004-
expect(disc,
1005-
contains('alpha: 1.0000, red: 1.0000, green: 0.0000, blue: 0.0000'));
1004+
const red = Color(0xffff0000);
1005+
expect(disc, contains(red.toString().replaceAll('ColorSpace.', '')));
10061006

10071007
final circle = await explain(
10081008
tester,
10091009
'<ul style="color: #0f0"><li>Foo</li></ul>',
10101010
useExplainer: false,
10111011
);
10121012

1013-
expect(circle,
1014-
contains('alpha: 1.0000, red: 0.0000, green: 1.0000, blue: 0.0000'));
1013+
const green = Color(0xff00ff00);
1014+
expect(circle, contains(green.toString().replaceAll('ColorSpace.', '')));
10151015
});
10161016
});
10171017
}

0 commit comments

Comments
 (0)