@@ -35,7 +35,7 @@ class Html extends StatelessWidget {
3535 /// See [its wiki page] (https://github.com/Sub6Resources/flutter_html/wiki/Style) for more info.
3636 Html ({
3737 Key key,
38- @required String data,
38+ @required this . data,
3939 this .onLinkTap,
4040 this .customRender,
4141 this .customImageRenders = const {},
@@ -45,27 +45,13 @@ class Html extends StatelessWidget {
4545 this .blacklistedElements = const [],
4646 this .style,
4747 this .navigationDelegateForIframe,
48- }) : htmlParserWidget = HtmlParser (
49- htmlData: data,
50- userDocument: null ,
51- onLinkTap: onLinkTap,
52- onImageTap: onImageTap,
53- onImageError: onImageError,
54- shrinkWrap: shrinkWrap,
55- style: style,
56- customRender: customRender,
57- imageRenders: {}
58- ..addAll (customImageRenders)
59- ..addAll (defaultImageRenders),
60- blacklistedElements: blacklistedElements,
61- navigationDelegateForIframe: navigationDelegateForIframe,
62- ),
48+ }) : document = null ,
6349 assert (data != null ),
6450 super (key: key);
6551
6652 Html .fromDom ({
6753 Key key,
68- @required dom. Document document,
54+ @required this . document,
6955 this .onLinkTap,
7056 this .customRender,
7157 this .customImageRenders = const {},
@@ -75,24 +61,12 @@ class Html extends StatelessWidget {
7561 this .blacklistedElements = const [],
7662 this .style,
7763 this .navigationDelegateForIframe,
78- }) : htmlParserWidget = HtmlParser (
79- htmlData: null ,
80- userDocument: document,
81- onLinkTap: onLinkTap,
82- onImageTap: onImageTap,
83- onImageError: onImageError,
84- shrinkWrap: shrinkWrap,
85- style: style,
86- customRender: customRender,
87- imageRenders: {}
88- ..addAll (customImageRenders)
89- ..addAll (defaultImageRenders),
90- blacklistedElements: blacklistedElements,
91- navigationDelegateForIframe: navigationDelegateForIframe,
92- ),
64+ }) : data = null ,
9365 assert (document != null ),
9466 super (key: key);
9567
68+ final String data;
69+ final dom.Document document;
9670 final OnTap onLinkTap;
9771 final Map <ImageSourceMatcher , ImageRender > customImageRenders;
9872 final ImageErrorListener onImageError;
@@ -115,15 +89,27 @@ class Html extends StatelessWidget {
11589 /// to use NavigationDelegate.
11690 final NavigationDelegate navigationDelegateForIframe;
11791
118- final Widget htmlParserWidget;
119-
12092 @override
12193 Widget build (BuildContext context) {
12294 final double width = shrinkWrap ? null : MediaQuery .of (context).size.width;
12395
12496 return Container (
12597 width: width,
126- child: htmlParserWidget,
98+ child: HtmlParser (
99+ htmlData: data,
100+ userDocument: document,
101+ onLinkTap: onLinkTap,
102+ onImageTap: onImageTap,
103+ onImageError: onImageError,
104+ shrinkWrap: shrinkWrap,
105+ style: style,
106+ customRender: customRender,
107+ imageRenders: {}
108+ ..addAll (customImageRenders)
109+ ..addAll (defaultImageRenders),
110+ blacklistedElements: blacklistedElements,
111+ navigationDelegateForIframe: navigationDelegateForIframe,
112+ ),
127113 );
128114 }
129115}
0 commit comments