diff --git a/lib/sheet_viewer_page.dart b/lib/sheet_viewer_page.dart index cf9fdf5..f78a70f 100644 --- a/lib/sheet_viewer_page.dart +++ b/lib/sheet_viewer_page.dart @@ -21,12 +21,19 @@ class _SheetViewerPageState extends State { int page = 1; int numPages = 1; bool isFullscreen = false; + PdfDocument? document; @override void initState() { super.initState(); } + @override + void dispose() { + document?.dispose(); // Make sure document gets garbage collected + super.dispose(); + } + Future loadPdf() async { var file = await widget.apiClient.getPdfFileCached(widget.sheet.uuid); if (file == null) { @@ -63,9 +70,9 @@ class _SheetViewerPageState extends State { future: loadPdf(), builder: (BuildContext context, AsyncSnapshot snapshot) { if (snapshot.hasData) { - var document = snapshot.data; + document = snapshot.data; if (document != null) { - numPages = document.pages.length; + numPages = document!.pages.length; } return GestureDetector( onTapUp: (TapUpDetails details) {