@@ -26,6 +26,8 @@ class LinkPreview extends StatefulWidget {
2626 this .metadataTitleStyle,
2727 this .onLinkPressed,
2828 required this .onPreviewDataFetched,
29+ this .openOnPreviewImageClick = false ,
30+ this .openOnPreviewTitleClick = false ,
2931 this .padding,
3032 required this .previewData,
3133 required this .text,
@@ -72,6 +74,12 @@ class LinkPreview extends StatefulWidget {
7274 /// preview data again.
7375 final void Function (PreviewData ) onPreviewDataFetched;
7476
77+ /// Open the link when the link preview image is clicked. Defaults to false.
78+ final bool openOnPreviewImageClick;
79+
80+ /// Open the link when the link preview title is clicked. Defaults to false.
81+ final bool openOnPreviewTitleClick;
82+
7583 /// Padding around initial text widget
7684 final EdgeInsets ? padding;
7785
@@ -205,7 +213,8 @@ class _LinkPreviewState extends State<LinkPreview>
205213 crossAxisAlignment: CrossAxisAlignment .start,
206214 children: < Widget > [
207215 GestureDetector (
208- onTap: () => _onOpen (data.link! ),
216+ onTap:
217+ widget.openOnPreviewTitleClick ? () => _onOpen (data.link! ) : null ,
209218 child: Container (
210219 padding: EdgeInsets .only (
211220 bottom: _padding.bottom,
@@ -296,7 +305,7 @@ class _LinkPreviewState extends State<LinkPreview>
296305
297306 Widget _imageWidget (String imageUrl, String linkUrl, double width) {
298307 return GestureDetector (
299- onTap: () => _onOpen (linkUrl),
308+ onTap: widget.openOnPreviewImageClick ? () => _onOpen (linkUrl) : null ,
300309 child: Container (
301310 constraints: BoxConstraints (
302311 maxHeight: width,
@@ -341,7 +350,9 @@ class _LinkPreviewState extends State<LinkPreview>
341350 children: < Widget > [
342351 Expanded (
343352 child: GestureDetector (
344- onTap: () => _onOpen (data.link! ),
353+ onTap: widget.openOnPreviewTitleClick
354+ ? () => _onOpen (data.link! )
355+ : null ,
345356 child: Container (
346357 margin: const EdgeInsets .only (right: 4 ),
347358 child: Column (
@@ -370,7 +381,7 @@ class _LinkPreviewState extends State<LinkPreview>
370381 Radius .circular (12 ),
371382 ),
372383 child: GestureDetector (
373- onTap: () => _onOpen (linkUrl),
384+ onTap: widget.openOnPreviewImageClick ? () => _onOpen (linkUrl) : null ,
374385 child: SizedBox (
375386 height: 48 ,
376387 width: 48 ,
0 commit comments