From 954bebb3c3864acddeb8f3d8bbe991d57d5fcd64 Mon Sep 17 00:00:00 2001 From: Jonas Jenwald Date: Mon, 25 Feb 2019 12:20:51 +0100 Subject: [PATCH] Use `Promise.prototype.finally` in the `PDFRenderingQueue.renderView` method Since [`finally`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/finally) is now supported through `src/shared/compatibility.js`, the temporary variable is no longer necessary. Also, this patch fixes the inconsistent return type of `PDFRenderingQueue.getHighestPriority` when no pages/thumbnails are visible. --- web/pdf_rendering_queue.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/web/pdf_rendering_queue.js b/web/pdf_rendering_queue.js index b8aa60ee4..6cd207a67 100644 --- a/web/pdf_rendering_queue.js +++ b/web/pdf_rendering_queue.js @@ -107,7 +107,7 @@ class PDFRenderingQueue { let numVisible = visibleViews.length; if (numVisible === 0) { - return false; + return null; } for (let i = 0; i < numVisible; ++i) { let view = visibleViews[i].view; @@ -162,10 +162,9 @@ class PDFRenderingQueue { break; case RenderingStates.INITIAL: this.highestPriorityPage = view.renderingId; - let continueRendering = () => { + view.draw().finally(() => { this.renderHighestPriority(); - }; - view.draw().then(continueRendering, continueRendering); + }); break; } return true;