Skip to content

Commit 4363f8c

Browse files
committed
Merge branch 'bugfix/913-tables-height-width' into feature/release-221
2 parents 09b4b37 + ee2528f commit 4363f8c

File tree

3 files changed

+13
-7
lines changed

3 files changed

+13
-7
lines changed

lib/html_parser.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -426,7 +426,7 @@ class HtmlParser extends StatelessWidget {
426426
children: [
427427
tree.style.listStylePosition == ListStylePosition.OUTSIDE ?
428428
Padding(
429-
padding: tree.style.padding ?? EdgeInsets.only(left: tree.style.direction != TextDirection.rtl ? 10.0 : 0.0, right: tree.style.direction == TextDirection.rtl ? 10.0 : 0.0),
429+
padding: tree.style.padding?.nonNegative ?? EdgeInsets.only(left: tree.style.direction != TextDirection.rtl ? 10.0 : 0.0, right: tree.style.direction == TextDirection.rtl ? 10.0 : 0.0),
430430
child: newContext.style.markerContent
431431
) : Container(height: 0, width: 0),
432432
Text("\t", textAlign: TextAlign.right, style: TextStyle(fontWeight: FontWeight.w400)),
@@ -1056,8 +1056,8 @@ class ContainerSpan extends StatelessWidget {
10561056
),
10571057
height: style.height,
10581058
width: style.width,
1059-
padding: style.padding,
1060-
margin: style.margin?.clamp(EdgeInsets.zero, const EdgeInsets.all(double.infinity)),
1059+
padding: style.padding?.nonNegative,
1060+
margin: style.margin?.nonNegative,
10611061
alignment: shrinkWrap ? null : style.alignment,
10621062
child: child ??
10631063
StyledText(

lib/src/layout_element.dart

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import 'package:flutter_html/html_parser.dart';
55
import 'package:flutter_html/src/anchor.dart';
66
import 'package:flutter_html/src/html_elements.dart';
77
import 'package:flutter_html/src/styled_element.dart';
8+
import 'package:flutter_html/src/utils.dart';
89
import 'package:flutter_html/style.dart';
910
import 'package:flutter_layout_grid/flutter_layout_grid.dart';
1011
import 'package:html/dom.dart' as dom;
@@ -33,8 +34,8 @@ class TableLayoutElement extends LayoutElement {
3334
Widget toWidget(RenderContext context) {
3435
return Container(
3536
key: AnchorKey.of(context.parser.key, this),
36-
margin: style.margin,
37-
padding: style.padding,
37+
padding: style.padding?.nonNegative,
38+
margin: style.margin?.nonNegative,
3839
alignment: style.alignment,
3940
decoration: BoxDecoration(
4041
color: style.backgroundColor,
@@ -121,8 +122,9 @@ class TableLayoutElement extends LayoutElement {
121122
}
122123
cells.add(GridPlacement(
123124
child: Container(
124-
width: double.infinity,
125-
padding: child.style.padding ?? row.style.padding,
125+
width: child.style.width ?? double.infinity,
126+
height: child.style.height,
127+
padding: child.style.padding?.nonNegative ?? row.style.padding?.nonNegative,
126128
decoration: BoxDecoration(
127129
color: child.style.backgroundColor ?? row.style.backgroundColor,
128130
border: child.style.border ?? row.style.border,

lib/src/utils.dart

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,4 +111,8 @@ extension TextTransformUtil on String? {
111111
return this;
112112
}
113113
}
114+
}
115+
116+
extension ClampedEdgeInsets on EdgeInsetsGeometry {
117+
EdgeInsetsGeometry get nonNegative => this.clamp(EdgeInsets.zero, const EdgeInsets.all(double.infinity));
114118
}

0 commit comments

Comments
 (0)