diff --git a/src/display/api.js b/src/display/api.js index 59efee3ba..fb47469e0 100644 --- a/src/display/api.js +++ b/src/display/api.js @@ -19,7 +19,7 @@ Promise, PasswordResponses, PasswordException, InvalidPDFException, MissingPDFException, UnknownErrorException, FontFaceObject, loadJpegStream, createScratchCanvas, CanvasGraphics, stringToBytes, - UnexpectedResponseException */ + UnexpectedResponseException, deprecated */ 'use strict'; @@ -259,6 +259,10 @@ PDFJS.getDocument = function getDocument(src, var task = new PDFDocumentLoadingTask(); // Support of the obsolete arguments (for compatibility with API v1.0) + if (arguments.length > 1) { + deprecated('getDocument is called with pdfDataRangeTransport, ' + + 'passwordCallback or progressCallback argument'); + } if (pdfDataRangeTransport) { if (!(pdfDataRangeTransport instanceof PDFDataRangeTransport)) { // Not a PDFDataRangeTransport instance, trying to add missing properties. @@ -786,6 +790,7 @@ var PDFPageProxy = (function PDFPageProxyClosure() { // Obsolete parameter support if (params.continueCallback) { + deprecated('render is used with continueCallback parameter'); renderTask.onContinue = params.continueCallback; } @@ -900,10 +905,10 @@ var PDFPageProxy = (function PDFPageProxyClosure() { }, /** - * Cleans up resources allocated by the page. - * Deprecated, use cleanup() instead. + * Cleans up resources allocated by the page. (deprecated) */ destroy: function() { + deprecated('page destroy method, use cleanup() instead'); this.cleanup(); }, diff --git a/src/shared/util.js b/src/shared/util.js index f4821bcc9..1adeb82c4 100644 --- a/src/shared/util.js +++ b/src/shared/util.js @@ -213,6 +213,11 @@ function warn(msg) { } } +// Deprecated API function -- treated as warnings. +function deprecated(details) { + warn('Deprecated API usage: ' + details); +} + // Fatal errors that should trigger the fallback UI and halt execution by // throwing an exception. function error(msg) { diff --git a/web/pdf_page_view.js b/web/pdf_page_view.js index d3f2d9ace..34345a3af 100644 --- a/web/pdf_page_view.js +++ b/web/pdf_page_view.js @@ -457,9 +457,9 @@ var PDFPageView = (function PDFPageViewClosure() { canvasContext: ctx, viewport: this.viewport, // intent: 'default', // === 'display' - continueCallback: renderContinueCallback }; var renderTask = this.renderTask = this.pdfPage.render(renderContext); + renderTask.onContinue = renderContinueCallback; this.renderTask.promise.then( function pdfPageRenderCallback() { diff --git a/web/pdf_thumbnail_view.js b/web/pdf_thumbnail_view.js index 88c92c738..24e4cf5f3 100644 --- a/web/pdf_thumbnail_view.js +++ b/web/pdf_thumbnail_view.js @@ -285,10 +285,10 @@ var PDFThumbnailView = (function PDFThumbnailViewClosure() { var renderContext = { canvasContext: ctx, - viewport: drawViewport, - continueCallback: renderContinueCallback + viewport: drawViewport }; var renderTask = this.renderTask = this.pdfPage.render(renderContext); + renderTask.onContinue = renderContinueCallback; renderTask.promise.then( function pdfPageRenderCallback() { diff --git a/web/viewer.js b/web/viewer.js index bb53afa2e..632afe077 100644 --- a/web/viewer.js +++ b/web/viewer.js @@ -526,6 +526,9 @@ var PDFViewerApplication = { this.setTitleUsingUrl(file.originalUrl); parameters.url = file.url; } + if (pdfDataRangeTransport) { + parameters.range = pdfDataRangeTransport; + } if (args) { for (var prop in args) { parameters[prop] = args[prop]; @@ -535,18 +538,19 @@ var PDFViewerApplication = { var self = this; self.downloadComplete = false; - var passwordNeeded = function passwordNeeded(updatePassword, reason) { + var loadingTask = PDFJS.getDocument(parameters); + + loadingTask.onPassword = function passwordNeeded(updatePassword, reason) { PasswordPrompt.updatePassword = updatePassword; PasswordPrompt.reason = reason; PasswordPrompt.open(); }; - function getDocumentProgress(progressData) { + loadingTask.onProgress = function getDocumentProgress(progressData) { self.progress(progressData.loaded / progressData.total); - } + }; - PDFJS.getDocument(parameters, pdfDataRangeTransport, passwordNeeded, - getDocumentProgress).then( + loadingTask.promise.then( function getDocumentCallback(pdfDocument) { self.load(pdfDocument, scale); },