From 32a00b9b2b085e5828a2fbc99d21f5580aad1565 Mon Sep 17 00:00:00 2001 From: Jonas Jenwald Date: Thu, 8 Apr 2021 12:22:07 +0200 Subject: [PATCH] Stop looping over `childNodes`, in `PDFThumbnailView.reset`, when removing the thumbnail A loop is less efficient than just overwriting the content, which is what we've generally been using (for years) in other parts of the code-base (see e.g. `BaseViewer` and `PDFThumbnailViewer`). --- web/pdf_thumbnail_view.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/web/pdf_thumbnail_view.js b/web/pdf_thumbnail_view.js index cbb919fc3..cb4b4b63d 100644 --- a/web/pdf_thumbnail_view.js +++ b/web/pdf_thumbnail_view.js @@ -181,10 +181,7 @@ class PDFThumbnailView { this.div.removeAttribute("data-loaded"); const ring = this.ring; - const childNodes = ring.childNodes; - for (let i = childNodes.length - 1; i >= 0; i--) { - ring.removeChild(childNodes[i]); - } + ring.textContent = ""; // Remove the thumbnail from the DOM. const borderAdjustment = 2 * THUMBNAIL_CANVAS_BORDER_WIDTH; ring.style.width = this.canvasWidth + borderAdjustment + "px"; ring.style.height = this.canvasHeight + borderAdjustment + "px";