David PHAM-VAN

Add shouldRepaint parameter

@@ -5,6 +5,7 @@ @@ -5,6 +5,7 @@
5 - Improve Android page format detection [Deepak] 5 - Improve Android page format detection [Deepak]
6 - Add previewPageMargin and padding parameters [Deepak] 6 - Add previewPageMargin and padding parameters [Deepak]
7 - Fix Scrollbar positionning and default margins 7 - Fix Scrollbar positionning and default margins
  8 +- Add shouldRepaint parameter
8 9
9 ## 5.1.0 10 ## 5.1.0
10 11
@@ -41,6 +41,7 @@ class PdfPreview extends StatefulWidget { @@ -41,6 +41,7 @@ class PdfPreview extends StatefulWidget {
41 this.shareActionExtraEmails, 41 this.shareActionExtraEmails,
42 this.previewPageMargin, 42 this.previewPageMargin,
43 this.padding, 43 this.padding,
  44 + this.shouldRepaint = false,
44 }) : super(key: key); 45 }) : super(key: key);
45 46
46 /// Called when a pdf document is needed 47 /// Called when a pdf document is needed
@@ -121,6 +122,9 @@ class PdfPreview extends StatefulWidget { @@ -121,6 +122,9 @@ class PdfPreview extends StatefulWidget {
121 /// padding for the pdf_preview widget 122 /// padding for the pdf_preview widget
122 final EdgeInsets? padding; 123 final EdgeInsets? padding;
123 124
  125 + /// Force repainting the PDF document
  126 + final bool shouldRepaint;
  127 +
124 @override 128 @override
125 _PdfPreviewState createState() => _PdfPreviewState(); 129 _PdfPreviewState createState() => _PdfPreviewState();
126 } 130 }
@@ -292,7 +296,7 @@ class _PdfPreviewState extends State<PdfPreview> { @@ -292,7 +296,7 @@ class _PdfPreviewState extends State<PdfPreview> {
292 296
293 @override 297 @override
294 void didUpdateWidget(covariant PdfPreview oldWidget) { 298 void didUpdateWidget(covariant PdfPreview oldWidget) {
295 - if (oldWidget.build != widget.build) { 299 + if (oldWidget.build != widget.build || widget.shouldRepaint) {
296 preview = null; 300 preview = null;
297 updatePosition = null; 301 updatePosition = null;
298 _raster(); 302 _raster();