Merge pull request #4455 from aib/master
Fix download button waiting if document has started but not completed downloading
This commit is contained in:
commit
9c59437ac3
@ -605,6 +605,8 @@ var PDFView = {
|
|||||||
|
|
||||||
var self = this;
|
var self = this;
|
||||||
self.loading = true;
|
self.loading = true;
|
||||||
|
self.downloadComplete = false;
|
||||||
|
|
||||||
var passwordNeeded = function passwordNeeded(updatePassword, reason) {
|
var passwordNeeded = function passwordNeeded(updatePassword, reason) {
|
||||||
PasswordPrompt.updatePassword = updatePassword;
|
PasswordPrompt.updatePassword = updatePassword;
|
||||||
PasswordPrompt.reason = reason;
|
PasswordPrompt.reason = reason;
|
||||||
@ -656,7 +658,7 @@ var PDFView = {
|
|||||||
},
|
},
|
||||||
|
|
||||||
download: function pdfViewDownload() {
|
download: function pdfViewDownload() {
|
||||||
function noData() {
|
function downloadByUrl() {
|
||||||
downloadManager.downloadUrl(url, filename);
|
downloadManager.downloadUrl(url, filename);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -670,7 +672,12 @@ var PDFView = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
if (!this.pdfDocument) { // the PDF is not ready yet
|
if (!this.pdfDocument) { // the PDF is not ready yet
|
||||||
noData();
|
downloadByUrl();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!this.downloadComplete) { // the PDF is still downloading
|
||||||
|
downloadByUrl();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -679,8 +686,8 @@ var PDFView = {
|
|||||||
var blob = PDFJS.createBlob(data, 'application/pdf');
|
var blob = PDFJS.createBlob(data, 'application/pdf');
|
||||||
downloadManager.download(blob, url, filename);
|
downloadManager.download(blob, url, filename);
|
||||||
},
|
},
|
||||||
noData // Error occurred try downloading with just the url.
|
downloadByUrl // Error occurred try downloading with just the url.
|
||||||
).then(null, noData);
|
).then(null, downloadByUrl);
|
||||||
},
|
},
|
||||||
|
|
||||||
fallback: function pdfViewFallback(featureId) {
|
fallback: function pdfViewFallback(featureId) {
|
||||||
@ -897,6 +904,7 @@ var PDFView = {
|
|||||||
DocumentProperties.resolveDataAvailable();
|
DocumentProperties.resolveDataAvailable();
|
||||||
|
|
||||||
pdfDocument.getDownloadInfo().then(function() {
|
pdfDocument.getDownloadInfo().then(function() {
|
||||||
|
self.downloadComplete = true;
|
||||||
PDFView.loadingBar.hide();
|
PDFView.loadingBar.hide();
|
||||||
var outerContainer = document.getElementById('outerContainer');
|
var outerContainer = document.getElementById('outerContainer');
|
||||||
outerContainer.classList.remove('loadingInProgress');
|
outerContainer.classList.remove('loadingInProgress');
|
||||||
|
Loading…
x
Reference in New Issue
Block a user