1
1
library flutter_html;
2
2
3
- //export custom render api
4
- export 'package:flutter_html/custom_render .dart' ;
3
+ //export image render api
4
+ export 'package:flutter_html/image_render .dart' ;
5
5
//export style api
6
6
export 'package:flutter_html/style.dart' ;
7
7
//export render context api
@@ -11,8 +11,6 @@ export 'package:flutter_html/src/layout_element.dart';
11
11
export 'package:flutter_html/src/replaced_element.dart' ;
12
12
export 'package:flutter_html/src/styled_element.dart' ;
13
13
export 'package:flutter_html/src/interactable_element.dart' ;
14
- //export anchor for use in flutter_html_<tag> packages
15
- export 'package:flutter_html/src/anchor.dart' ;
16
14
17
15
import 'package:flutter/material.dart' ;
18
16
import 'package:flutter_html/custom_render.dart' ;
@@ -21,6 +19,32 @@ import 'package:flutter_html/html_parser.dart';
21
19
import 'package:flutter_html/src/html_elements.dart' ;
22
20
import 'package:flutter_html/style.dart' ;
23
21
import 'package:html/dom.dart' as dom;
22
+ import 'package:webview_flutter/webview_flutter.dart' ;
23
+
24
+ //export render context api
25
+ export 'package:flutter_html/html_parser.dart' ;
26
+ //export render context api
27
+ export 'package:flutter_html/html_parser.dart' ;
28
+ //export image render api
29
+ export 'package:flutter_html/image_render.dart' ;
30
+ //export image render api
31
+ export 'package:flutter_html/image_render.dart' ;
32
+ export 'package:flutter_html/src/anchor.dart' ;
33
+ export 'package:flutter_html/src/anchor.dart' ;
34
+ export 'package:flutter_html/src/interactable_element.dart' ;
35
+ export 'package:flutter_html/src/interactable_element.dart' ;
36
+ //export src for advanced custom render uses (e.g. casting context.tree)
37
+ export 'package:flutter_html/src/layout_element.dart' ;
38
+ //export src for advanced custom render uses (e.g. casting context.tree)
39
+ export 'package:flutter_html/src/layout_element.dart' ;
40
+ export 'package:flutter_html/src/replaced_element.dart' ;
41
+ export 'package:flutter_html/src/replaced_element.dart' ;
42
+ export 'package:flutter_html/src/styled_element.dart' ;
43
+ export 'package:flutter_html/src/styled_element.dart' ;
44
+ //export style api
45
+ export 'package:flutter_html/style.dart' ;
46
+ //export style api
47
+ export 'package:flutter_html/style.dart' ;
24
48
25
49
class Html extends StatelessWidget {
26
50
/// The `Html` widget takes HTML as input and displays a RichText
@@ -50,6 +74,7 @@ class Html extends StatelessWidget {
50
74
/// See [its wiki page] (https://github.com/Sub6Resources/flutter_html/wiki/Style) for more info.
51
75
Html ({
52
76
Key ? key,
77
+ GlobalKey ? anchorKey,
53
78
required this .data,
54
79
this .onLinkTap,
55
80
this .customRenders = const {},
@@ -61,11 +86,12 @@ class Html extends StatelessWidget {
61
86
this .style = const {},
62
87
}) : document = null ,
63
88
assert (data != null ),
64
- anchorKey = GlobalKey (),
89
+ _anchorKey = anchorKey ?? GlobalKey (),
65
90
super (key: key);
66
91
67
92
Html .fromDom ({
68
93
Key ? key,
94
+ GlobalKey ? anchorKey,
69
95
@required this .document,
70
96
this .onLinkTap,
71
97
this .customRenders = const {},
@@ -77,11 +103,11 @@ class Html extends StatelessWidget {
77
103
this .style = const {},
78
104
}) : data = null ,
79
105
assert (document != null ),
80
- anchorKey = GlobalKey (),
106
+ _anchorKey = anchorKey ?? GlobalKey (),
81
107
super (key: key);
82
108
83
109
/// A unique key for this Html widget to ensure uniqueness of anchors
84
- final Key anchorKey ;
110
+ final GlobalKey _anchorKey ;
85
111
86
112
/// The HTML data passed to the widget as a String
87
113
final String ? data;
@@ -125,13 +151,14 @@ class Html extends StatelessWidget {
125
151
126
152
@override
127
153
Widget build (BuildContext context) {
128
- final dom.Document doc = data != null ? HtmlParser .parseHTML (data! ) : document! ;
154
+ final dom.Document doc =
155
+ data != null ? HtmlParser .parseHTML (data! ) : document! ;
129
156
final double ? width = shrinkWrap ? null : MediaQuery .of (context).size.width;
130
157
131
158
return Container (
132
159
width: width,
133
160
child: HtmlParser (
134
- key: anchorKey ,
161
+ key: _anchorKey ,
135
162
htmlData: doc,
136
163
onLinkTap: onLinkTap,
137
164
onImageTap: onImageTap,
0 commit comments