Replace unnecessary var self = this
statements with arrow functions in web/pdf_page_view.js
and web/pdf_thumbnail_view.js
Also replaces `var` with `let` in code that's touched in the patch. Please note that this should be completely safe, for two separate reasons, since trying to access let in a scope where it's not defined is first of all a runtime error and second of all an ESLint error (thanks to the `no-undef` rule).
This commit is contained in:
parent
08f8b68f12
commit
a9e5bc91fb
@ -356,7 +356,7 @@ var PDFPageView = (function PDFPageViewClosure() {
|
||||
return this.viewport.convertToPdfPoint(x, y);
|
||||
},
|
||||
|
||||
draw: function PDFPageView_draw() {
|
||||
draw() {
|
||||
if (this.renderingState !== RenderingStates.INITIAL) {
|
||||
console.error('Must be in new state before drawing');
|
||||
this.reset(); // Ensure that we reset all state to prevent issues.
|
||||
@ -364,12 +364,11 @@ var PDFPageView = (function PDFPageViewClosure() {
|
||||
|
||||
this.renderingState = RenderingStates.RUNNING;
|
||||
|
||||
var self = this;
|
||||
var pdfPage = this.pdfPage;
|
||||
var div = this.div;
|
||||
let pdfPage = this.pdfPage;
|
||||
let div = this.div;
|
||||
// Wrap the canvas so if it has a css transform for highdpi the overflow
|
||||
// will be hidden in FF.
|
||||
var canvasWrapper = document.createElement('div');
|
||||
let canvasWrapper = document.createElement('div');
|
||||
canvasWrapper.style.width = div.style.width;
|
||||
canvasWrapper.style.height = div.style.height;
|
||||
canvasWrapper.classList.add('canvasWrapper');
|
||||
@ -381,10 +380,9 @@ var PDFPageView = (function PDFPageViewClosure() {
|
||||
div.appendChild(canvasWrapper);
|
||||
}
|
||||
|
||||
var textLayerDiv = null;
|
||||
var textLayer = null;
|
||||
let textLayer = null;
|
||||
if (this.textLayerFactory) {
|
||||
textLayerDiv = document.createElement('div');
|
||||
let textLayerDiv = document.createElement('div');
|
||||
textLayerDiv.className = 'textLayer';
|
||||
textLayerDiv.style.width = canvasWrapper.style.width;
|
||||
textLayerDiv.style.height = canvasWrapper.style.height;
|
||||
@ -401,13 +399,13 @@ var PDFPageView = (function PDFPageViewClosure() {
|
||||
}
|
||||
this.textLayer = textLayer;
|
||||
|
||||
var renderContinueCallback = null;
|
||||
let renderContinueCallback = null;
|
||||
if (this.renderingQueue) {
|
||||
renderContinueCallback = function renderContinueCallback(cont) {
|
||||
if (!self.renderingQueue.isHighestPriority(self)) {
|
||||
self.renderingState = RenderingStates.PAUSED;
|
||||
self.resume = function resumeCallback() {
|
||||
self.renderingState = RenderingStates.RUNNING;
|
||||
renderContinueCallback = (cont) => {
|
||||
if (!this.renderingQueue.isHighestPriority(this)) {
|
||||
this.renderingState = RenderingStates.PAUSED;
|
||||
this.resume = () => {
|
||||
this.renderingState = RenderingStates.RUNNING;
|
||||
cont();
|
||||
};
|
||||
return;
|
||||
@ -416,37 +414,37 @@ var PDFPageView = (function PDFPageViewClosure() {
|
||||
};
|
||||
}
|
||||
|
||||
var finishPaintTask = function finishPaintTask(error) {
|
||||
let finishPaintTask = (error) => {
|
||||
// The paintTask may have been replaced by a new one, so only remove
|
||||
// the reference to the paintTask if it matches the one that is
|
||||
// triggering this callback.
|
||||
if (paintTask === self.paintTask) {
|
||||
self.paintTask = null;
|
||||
if (paintTask === this.paintTask) {
|
||||
this.paintTask = null;
|
||||
}
|
||||
|
||||
if (((typeof PDFJSDev === 'undefined' ||
|
||||
!PDFJSDev.test('PDFJS_NEXT')) && error === 'cancelled') ||
|
||||
error instanceof RenderingCancelledException) {
|
||||
self.error = null;
|
||||
this.error = null;
|
||||
return Promise.resolve(undefined);
|
||||
}
|
||||
|
||||
self.renderingState = RenderingStates.FINISHED;
|
||||
this.renderingState = RenderingStates.FINISHED;
|
||||
|
||||
if (self.loadingIconDiv) {
|
||||
div.removeChild(self.loadingIconDiv);
|
||||
delete self.loadingIconDiv;
|
||||
if (this.loadingIconDiv) {
|
||||
div.removeChild(this.loadingIconDiv);
|
||||
delete this.loadingIconDiv;
|
||||
}
|
||||
self._resetZoomLayer(/* removeFromDOM = */ true);
|
||||
this._resetZoomLayer(/* removeFromDOM = */ true);
|
||||
|
||||
self.error = error;
|
||||
self.stats = pdfPage.stats;
|
||||
if (self.onAfterDraw) {
|
||||
self.onAfterDraw();
|
||||
this.error = error;
|
||||
this.stats = pdfPage.stats;
|
||||
if (this.onAfterDraw) {
|
||||
this.onAfterDraw();
|
||||
}
|
||||
self.eventBus.dispatch('pagerendered', {
|
||||
source: self,
|
||||
pageNumber: self.id,
|
||||
this.eventBus.dispatch('pagerendered', {
|
||||
source: this,
|
||||
pageNumber: this.id,
|
||||
cssTransform: false,
|
||||
});
|
||||
|
||||
@ -456,13 +454,13 @@ var PDFPageView = (function PDFPageViewClosure() {
|
||||
return Promise.resolve(undefined);
|
||||
};
|
||||
|
||||
var paintTask = this.renderer === RendererType.SVG ?
|
||||
let paintTask = this.renderer === RendererType.SVG ?
|
||||
this.paintOnSvg(canvasWrapper) :
|
||||
this.paintOnCanvas(canvasWrapper);
|
||||
paintTask.onRenderContinue = renderContinueCallback;
|
||||
this.paintTask = paintTask;
|
||||
|
||||
var resultPromise = paintTask.promise.then(function () {
|
||||
let resultPromise = paintTask.promise.then(function() {
|
||||
return finishPaintTask(null).then(function () {
|
||||
if (textLayer) {
|
||||
pdfPage.getTextContent({
|
||||
@ -473,7 +471,7 @@ var PDFPageView = (function PDFPageViewClosure() {
|
||||
});
|
||||
}
|
||||
});
|
||||
}, function (reason) {
|
||||
}, function(reason) {
|
||||
return finishPaintTask(reason);
|
||||
});
|
||||
|
||||
@ -583,21 +581,17 @@ var PDFPageView = (function PDFPageViewClosure() {
|
||||
}
|
||||
};
|
||||
|
||||
renderTask.promise.then(
|
||||
function pdfPageRenderCallback() {
|
||||
showCanvas();
|
||||
renderCapability.resolve(undefined);
|
||||
},
|
||||
function pdfPageRenderError(error) {
|
||||
showCanvas();
|
||||
renderCapability.reject(error);
|
||||
}
|
||||
);
|
||||
|
||||
renderTask.promise.then(function() {
|
||||
showCanvas();
|
||||
renderCapability.resolve(undefined);
|
||||
}, function(error) {
|
||||
showCanvas();
|
||||
renderCapability.reject(error);
|
||||
});
|
||||
return result;
|
||||
},
|
||||
|
||||
paintOnSvg: function PDFPageView_paintOnSvg(wrapper) {
|
||||
paintOnSvg(wrapper) {
|
||||
if (typeof PDFJSDev !== 'undefined' &&
|
||||
PDFJSDev.test('FIREFOX || MOZCENTRAL || CHROME')) {
|
||||
// Return a mock object, to prevent errors such as e.g.
|
||||
@ -609,33 +603,32 @@ var PDFPageView = (function PDFPageViewClosure() {
|
||||
};
|
||||
}
|
||||
|
||||
var cancelled = false;
|
||||
var ensureNotCancelled = function () {
|
||||
let cancelled = false;
|
||||
let ensureNotCancelled = () => {
|
||||
if (cancelled) {
|
||||
if ((typeof PDFJSDev !== 'undefined' &&
|
||||
PDFJSDev.test('PDFJS_NEXT')) || PDFJS.pdfjsNext) {
|
||||
throw new RenderingCancelledException(
|
||||
'Rendering cancelled, page ' + self.id, 'svg');
|
||||
'Rendering cancelled, page ' + this.id, 'svg');
|
||||
} else {
|
||||
throw 'cancelled'; // eslint-disable-line no-throw-literal
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var self = this;
|
||||
var pdfPage = this.pdfPage;
|
||||
var actualSizeViewport = this.viewport.clone({scale: CSS_UNITS});
|
||||
var promise = pdfPage.getOperatorList().then(function (opList) {
|
||||
let pdfPage = this.pdfPage;
|
||||
let actualSizeViewport = this.viewport.clone({ scale: CSS_UNITS, });
|
||||
let promise = pdfPage.getOperatorList().then((opList) => {
|
||||
ensureNotCancelled();
|
||||
var svgGfx = new SVGGraphics(pdfPage.commonObjs, pdfPage.objs);
|
||||
return svgGfx.getSVG(opList, actualSizeViewport).then(function (svg) {
|
||||
return svgGfx.getSVG(opList, actualSizeViewport).then((svg) => {
|
||||
ensureNotCancelled();
|
||||
self.svg = svg;
|
||||
self.paintedViewportMap.set(svg, actualSizeViewport);
|
||||
this.svg = svg;
|
||||
this.paintedViewportMap.set(svg, actualSizeViewport);
|
||||
|
||||
svg.style.width = wrapper.style.width;
|
||||
svg.style.height = wrapper.style.height;
|
||||
self.renderingState = RenderingStates.FINISHED;
|
||||
this.renderingState = RenderingStates.FINISHED;
|
||||
wrapper.appendChild(svg);
|
||||
});
|
||||
});
|
||||
|
@ -267,7 +267,7 @@ var PDFThumbnailView = (function PDFThumbnailViewClosure() {
|
||||
delete this.canvas;
|
||||
},
|
||||
|
||||
draw: function PDFThumbnailView_draw() {
|
||||
draw() {
|
||||
if (this.renderingState !== RenderingStates.INITIAL) {
|
||||
console.error('Must be in new state before drawing');
|
||||
return Promise.resolve(undefined);
|
||||
@ -275,15 +275,14 @@ var PDFThumbnailView = (function PDFThumbnailViewClosure() {
|
||||
|
||||
this.renderingState = RenderingStates.RUNNING;
|
||||
|
||||
var renderCapability = createPromiseCapability();
|
||||
let renderCapability = createPromiseCapability();
|
||||
|
||||
var self = this;
|
||||
function thumbnailDrawCallback(error) {
|
||||
let finishRenderTask = (error) => {
|
||||
// The renderTask may have been replaced by a new one, so only remove
|
||||
// the reference to the renderTask if it matches the one that is
|
||||
// triggering this callback.
|
||||
if (renderTask === self.renderTask) {
|
||||
self.renderTask = null;
|
||||
if (renderTask === this.renderTask) {
|
||||
this.renderTask = null;
|
||||
}
|
||||
|
||||
if (((typeof PDFJSDev === 'undefined' ||
|
||||
@ -293,23 +292,23 @@ var PDFThumbnailView = (function PDFThumbnailViewClosure() {
|
||||
return;
|
||||
}
|
||||
|
||||
self.renderingState = RenderingStates.FINISHED;
|
||||
self._convertCanvasToImage();
|
||||
this.renderingState = RenderingStates.FINISHED;
|
||||
this._convertCanvasToImage();
|
||||
|
||||
if (!error) {
|
||||
renderCapability.resolve(undefined);
|
||||
} else {
|
||||
renderCapability.reject(error);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var ctx = this._getPageDrawContext();
|
||||
var drawViewport = this.viewport.clone({ scale: this.scale });
|
||||
var renderContinueCallback = function renderContinueCallback(cont) {
|
||||
if (!self.renderingQueue.isHighestPriority(self)) {
|
||||
self.renderingState = RenderingStates.PAUSED;
|
||||
self.resume = function resumeCallback() {
|
||||
self.renderingState = RenderingStates.RUNNING;
|
||||
let ctx = this._getPageDrawContext();
|
||||
let drawViewport = this.viewport.clone({ scale: this.scale, });
|
||||
let renderContinueCallback = (cont) => {
|
||||
if (!this.renderingQueue.isHighestPriority(this)) {
|
||||
this.renderingState = RenderingStates.PAUSED;
|
||||
this.resume = () => {
|
||||
this.renderingState = RenderingStates.RUNNING;
|
||||
cont();
|
||||
};
|
||||
return;
|
||||
@ -317,21 +316,18 @@ var PDFThumbnailView = (function PDFThumbnailViewClosure() {
|
||||
cont();
|
||||
};
|
||||
|
||||
var renderContext = {
|
||||
let renderContext = {
|
||||
canvasContext: ctx,
|
||||
viewport: drawViewport
|
||||
};
|
||||
var renderTask = this.renderTask = this.pdfPage.render(renderContext);
|
||||
let renderTask = this.renderTask = this.pdfPage.render(renderContext);
|
||||
renderTask.onContinue = renderContinueCallback;
|
||||
|
||||
renderTask.promise.then(
|
||||
function pdfPageRenderCallback() {
|
||||
thumbnailDrawCallback(null);
|
||||
},
|
||||
function pdfPageRenderError(error) {
|
||||
thumbnailDrawCallback(error);
|
||||
}
|
||||
);
|
||||
renderTask.promise.then(function() {
|
||||
finishRenderTask(null);
|
||||
}, function(error) {
|
||||
finishRenderTask(error);
|
||||
});
|
||||
return renderCapability.promise;
|
||||
},
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user