diff --git a/web/pdf_thumbnail_view.js b/web/pdf_thumbnail_view.js index 633f8ab65..8ace2f82d 100644 --- a/web/pdf_thumbnail_view.js +++ b/web/pdf_thumbnail_view.js @@ -502,10 +502,6 @@ class PDFThumbnailView { } }); } - - static cleanup() { - TempImageFactory.destroyCanvas(); - } } -export { PDFThumbnailView }; +export { PDFThumbnailView, TempImageFactory }; diff --git a/web/pdf_thumbnail_viewer.js b/web/pdf_thumbnail_viewer.js index 9a4e94cea..2da5613fe 100644 --- a/web/pdf_thumbnail_viewer.js +++ b/web/pdf_thumbnail_viewer.js @@ -20,7 +20,8 @@ import { scrollIntoView, watchScroll, } from "./ui_utils.js"; -import { PDFThumbnailView } from "./pdf_thumbnail_view.js"; +import { PDFThumbnailView, TempImageFactory } from "./pdf_thumbnail_view.js"; +import { RenderingStates } from "./pdf_rendering_queue.js"; const THUMBNAIL_SCROLL_MARGIN = -19; const THUMBNAIL_SELECTED_CLASS = "selected"; @@ -156,7 +157,15 @@ class PDFThumbnailViewer { } cleanup() { - PDFThumbnailView.cleanup(); + for (let i = 0, ii = this._thumbnails.length; i < ii; i++) { + if ( + this._thumbnails[i] && + this._thumbnails[i].renderingState !== RenderingStates.FINISHED + ) { + this._thumbnails[i].reset(); + } + } + TempImageFactory.destroyCanvas(); } /**