@@ -2,7 +2,6 @@ library flutter_html;
22
33//export image render api
44export 'package:flutter_html/image_render.dart' ;
5- export 'package:flutter_html/custom_render.dart' ;
65//export style api
76export 'package:flutter_html/style.dart' ;
87//export render context api
@@ -20,8 +19,33 @@ import 'package:flutter_html/html_parser.dart';
2019import 'package:flutter_html/image_render.dart' ;
2120import 'package:flutter_html/src/html_elements.dart' ;
2221import 'package:flutter_html/style.dart' ;
23- import 'package:webview_flutter/webview_flutter.dart' ;
2422import 'package:html/dom.dart' as dom;
23+ import 'package:webview_flutter/webview_flutter.dart' ;
24+
25+ //export render context api
26+ export 'package:flutter_html/html_parser.dart' ;
27+ //export render context api
28+ export 'package:flutter_html/html_parser.dart' ;
29+ //export image render api
30+ export 'package:flutter_html/image_render.dart' ;
31+ //export image render api
32+ export 'package:flutter_html/image_render.dart' ;
33+ export 'package:flutter_html/src/anchor.dart' ;
34+ export 'package:flutter_html/src/anchor.dart' ;
35+ export 'package:flutter_html/src/interactable_element.dart' ;
36+ export 'package:flutter_html/src/interactable_element.dart' ;
37+ //export src for advanced custom render uses (e.g. casting context.tree)
38+ export 'package:flutter_html/src/layout_element.dart' ;
39+ //export src for advanced custom render uses (e.g. casting context.tree)
40+ export 'package:flutter_html/src/layout_element.dart' ;
41+ export 'package:flutter_html/src/replaced_element.dart' ;
42+ export 'package:flutter_html/src/replaced_element.dart' ;
43+ export 'package:flutter_html/src/styled_element.dart' ;
44+ export 'package:flutter_html/src/styled_element.dart' ;
45+ //export style api
46+ export 'package:flutter_html/style.dart' ;
47+ //export style api
48+ export 'package:flutter_html/style.dart' ;
2549
2650class Html extends StatelessWidget {
2751 /// The `Html` widget takes HTML as input and displays a RichText
@@ -51,6 +75,7 @@ class Html extends StatelessWidget {
5175 /// See [its wiki page] (https://github.com/Sub6Resources/flutter_html/wiki/Style) for more info.
5276 Html ({
5377 Key ? key,
78+ GlobalKey ? anchorKey,
5479 required this .data,
5580 this .onLinkTap,
5681 this .customRenders = const {},
@@ -63,13 +88,14 @@ class Html extends StatelessWidget {
6388 this .tagsList = const [],
6489 this .style = const {},
6590 this .navigationDelegateForIframe,
66- }) : document = null ,
67- assert (data != null ),
68- anchorKey = GlobalKey (),
91+ }) : document = null ,
92+ assert (data != null ),
93+ _anchorKey = anchorKey ?? GlobalKey (),
6994 super (key: key);
7095
7196 Html .fromDom ({
7297 Key ? key,
98+ GlobalKey ? anchorKey,
7399 @required this .document,
74100 this .onLinkTap,
75101 this .customRenders = const {},
@@ -82,13 +108,13 @@ class Html extends StatelessWidget {
82108 this .tagsList = const [],
83109 this .style = const {},
84110 this .navigationDelegateForIframe,
85- }) : data = null ,
111+ }) : data = null ,
86112 assert (document != null ),
87- anchorKey = GlobalKey (),
113+ _anchorKey = anchorKey ?? GlobalKey (),
88114 super (key: key);
89115
90116 /// A unique key for this Html widget to ensure uniqueness of anchors
91- final Key anchorKey ;
117+ final GlobalKey _anchorKey ;
92118
93119 /// The HTML data passed to the widget as a String
94120 final String ? data;
@@ -113,7 +139,6 @@ class Html extends StatelessWidget {
113139 /// You can return a widget here to override the default error widget.
114140 final OnMathError ? onMathError;
115141
116-
117142 /// A parameter that should be set when the HTML widget is expected to be
118143 /// flexible
119144 final bool shrinkWrap;
@@ -145,13 +170,14 @@ class Html extends StatelessWidget {
145170
146171 @override
147172 Widget build (BuildContext context) {
148- final dom.Document doc = data != null ? HtmlParser .parseHTML (data! ) : document! ;
173+ final dom.Document doc =
174+ data != null ? HtmlParser .parseHTML (data! ) : document! ;
149175 final double ? width = shrinkWrap ? null : MediaQuery .of (context).size.width;
150176
151177 return Container (
152178 width: width,
153179 child: HtmlParser (
154- key: anchorKey ,
180+ key: _anchorKey ,
155181 htmlData: doc,
156182 onLinkTap: onLinkTap,
157183 onImageTap: onImageTap,
0 commit comments