|
|
|
@ -571,6 +571,8 @@ var PDFView = {
@@ -571,6 +571,8 @@ var PDFView = {
|
|
|
|
|
this.pdfDocument = null; |
|
|
|
|
var self = this; |
|
|
|
|
self.loading = true; |
|
|
|
|
self.downloadComplete = false; |
|
|
|
|
|
|
|
|
|
var passwordNeeded = function passwordNeeded(updatePassword, reason) { |
|
|
|
|
PasswordPrompt.updatePassword = updatePassword; |
|
|
|
|
PasswordPrompt.reason = reason; |
|
|
|
@ -622,7 +624,7 @@ var PDFView = {
@@ -622,7 +624,7 @@ var PDFView = {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
download: function pdfViewDownload() { |
|
|
|
|
function noData() { |
|
|
|
|
function downloadByUrl() { |
|
|
|
|
downloadManager.downloadUrl(url, filename); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -636,7 +638,12 @@ var PDFView = {
@@ -636,7 +638,12 @@ var PDFView = {
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
if (!this.pdfDocument) { // the PDF is not ready yet
|
|
|
|
|
noData(); |
|
|
|
|
downloadByUrl(); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (!this.downloadComplete) { // the PDF is still downloading
|
|
|
|
|
downloadByUrl(); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -645,8 +652,8 @@ var PDFView = {
@@ -645,8 +652,8 @@ var PDFView = {
|
|
|
|
|
var blob = PDFJS.createBlob(data, 'application/pdf'); |
|
|
|
|
downloadManager.download(blob, url, filename); |
|
|
|
|
}, |
|
|
|
|
noData // Error occurred try downloading with just the url.
|
|
|
|
|
).then(null, noData); |
|
|
|
|
downloadByUrl // Error occurred try downloading with just the url.
|
|
|
|
|
).then(null, downloadByUrl); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
fallback: function pdfViewFallback(featureId) { |
|
|
|
@ -864,6 +871,7 @@ var PDFView = {
@@ -864,6 +871,7 @@ var PDFView = {
|
|
|
|
|
errorWrapper.setAttribute('hidden', 'true'); |
|
|
|
|
|
|
|
|
|
pdfDocument.getDownloadInfo().then(function() { |
|
|
|
|
self.downloadComplete = true; |
|
|
|
|
PDFView.loadingBar.hide(); |
|
|
|
|
var outerContainer = document.getElementById('outerContainer'); |
|
|
|
|
outerContainer.classList.remove('loadingInProgress'); |
|
|
|
|