From: Artur Adib Date: Wed, 30 Nov 2011 20:10:27 +0000 (-0500) Subject: bringing Cache() back X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=a523d807534e0493147963b453c837345fa58e9e;p=pdf.js.git bringing Cache() back --- diff --git a/web/viewer.js b/web/viewer.js index e945dc4..dd49d75 100644 --- a/web/viewer.js +++ b/web/viewer.js @@ -13,6 +13,19 @@ var kMinScale = 0.25; var kMaxScale = 4.0; +var Cache = function cacheCache(size) { + var data = []; + this.push = function cachePush(view) { + var i = data.indexOf(view); + if (i >= 0) + data.splice(i); + data.push(view); + if (data.length > size) + data.shift().update(); + }; +}; + +var cache = new Cache(kCacheSize); var currentPageNumber = 1; var PDFView = { @@ -639,7 +652,8 @@ function updateViewarea() { var visiblePages = PDFView.getVisiblePages(); for (var i = 0; i < visiblePages.length; i++) { var page = visiblePages[i]; - PDFView.pages[page.id - 1].draw(); + if (PDFView.pages[page.id - 1].draw()) + cache.push(page.view); } if (!visiblePages.length)