Merge pull request #5895 from Snuffleupagus/viewer-pref-init-refactor
Re-factor and clean-up some preference related code in viewer.js
This commit is contained in:
commit
a7e6f6d4d0
@ -111,6 +111,7 @@ var PDFViewerApplication = {
|
|||||||
preferenceSidebarViewOnLoad: SidebarView.NONE,
|
preferenceSidebarViewOnLoad: SidebarView.NONE,
|
||||||
preferencePdfBugEnabled: false,
|
preferencePdfBugEnabled: false,
|
||||||
preferenceShowPreviousViewOnLoad: true,
|
preferenceShowPreviousViewOnLoad: true,
|
||||||
|
preferenceDefaultZoomValue: '',
|
||||||
isViewerEmbedded: (window.parent !== window),
|
isViewerEmbedded: (window.parent !== window),
|
||||||
url: '',
|
url: '',
|
||||||
|
|
||||||
@ -231,9 +232,9 @@ var PDFViewerApplication = {
|
|||||||
}),
|
}),
|
||||||
Preferences.get('showPreviousViewOnLoad').then(function resolved(value) {
|
Preferences.get('showPreviousViewOnLoad').then(function resolved(value) {
|
||||||
self.preferenceShowPreviousViewOnLoad = value;
|
self.preferenceShowPreviousViewOnLoad = value;
|
||||||
if (!value && window.history.state) {
|
}),
|
||||||
window.history.replaceState(null, '');
|
Preferences.get('defaultZoomValue').then(function resolved(value) {
|
||||||
}
|
self.preferenceDefaultZoomValue = value;
|
||||||
}),
|
}),
|
||||||
Preferences.get('disableTextLayer').then(function resolved(value) {
|
Preferences.get('disableTextLayer').then(function resolved(value) {
|
||||||
if (PDFJS.disableTextLayer === true) {
|
if (PDFJS.disableTextLayer === true) {
|
||||||
@ -259,7 +260,6 @@ var PDFViewerApplication = {
|
|||||||
Preferences.get('useOnlyCssZoom').then(function resolved(value) {
|
Preferences.get('useOnlyCssZoom').then(function resolved(value) {
|
||||||
PDFJS.useOnlyCssZoom = value;
|
PDFJS.useOnlyCssZoom = value;
|
||||||
})
|
})
|
||||||
|
|
||||||
// TODO move more preferences and other async stuff here
|
// TODO move more preferences and other async stuff here
|
||||||
]).catch(function (reason) { });
|
]).catch(function (reason) { });
|
||||||
|
|
||||||
@ -881,33 +881,26 @@ var PDFViewerApplication = {
|
|||||||
if (!PDFJS.disableHistory && !self.isViewerEmbedded) {
|
if (!PDFJS.disableHistory && !self.isViewerEmbedded) {
|
||||||
// The browsing history is only enabled when the viewer is standalone,
|
// The browsing history is only enabled when the viewer is standalone,
|
||||||
// i.e. not when it is embedded in a web page.
|
// i.e. not when it is embedded in a web page.
|
||||||
|
if (!self.preferenceShowPreviousViewOnLoad && window.history.state) {
|
||||||
|
window.history.replaceState(null, '');
|
||||||
|
}
|
||||||
PDFHistory.initialize(self.documentFingerprint, self);
|
PDFHistory.initialize(self.documentFingerprint, self);
|
||||||
}
|
}
|
||||||
});
|
|
||||||
|
|
||||||
// Fetch the necessary preference values.
|
store.initializedPromise.then(function resolved() {
|
||||||
var defaultZoomValue;
|
|
||||||
var defaultZoomValuePromise =
|
|
||||||
Preferences.get('defaultZoomValue').then(function (prefValue) {
|
|
||||||
defaultZoomValue = prefValue;
|
|
||||||
});
|
|
||||||
|
|
||||||
var storePromise = store.initializedPromise;
|
|
||||||
Promise.all([firstPagePromise, storePromise, defaultZoomValuePromise]).then(
|
|
||||||
function resolved() {
|
|
||||||
var storedHash = null;
|
var storedHash = null;
|
||||||
if (PDFViewerApplication.preferenceShowPreviousViewOnLoad &&
|
if (self.preferenceShowPreviousViewOnLoad &&
|
||||||
store.get('exists', false)) {
|
store.get('exists', false)) {
|
||||||
var pageNum = store.get('page', '1');
|
var pageNum = store.get('page', '1');
|
||||||
var zoom = defaultZoomValue ||
|
var zoom = self.preferenceDefaultZoomValue ||
|
||||||
store.get('zoom', self.pdfViewer.currentScale);
|
store.get('zoom', self.pdfViewer.currentScale);
|
||||||
var left = store.get('scrollLeft', '0');
|
var left = store.get('scrollLeft', '0');
|
||||||
var top = store.get('scrollTop', '0');
|
var top = store.get('scrollTop', '0');
|
||||||
|
|
||||||
storedHash = 'page=' + pageNum + '&zoom=' + zoom + ',' +
|
storedHash = 'page=' + pageNum + '&zoom=' + zoom + ',' +
|
||||||
left + ',' + top;
|
left + ',' + top;
|
||||||
} else if (defaultZoomValue) {
|
} else if (self.preferenceDefaultZoomValue) {
|
||||||
storedHash = 'page=1&zoom=' + defaultZoomValue;
|
storedHash = 'page=1&zoom=' + self.preferenceDefaultZoomValue;
|
||||||
}
|
}
|
||||||
self.setInitialView(storedHash, scale);
|
self.setInitialView(storedHash, scale);
|
||||||
|
|
||||||
@ -921,8 +914,6 @@ var PDFViewerApplication = {
|
|||||||
}
|
}
|
||||||
}, function rejected(reason) {
|
}, function rejected(reason) {
|
||||||
console.error(reason);
|
console.error(reason);
|
||||||
|
|
||||||
firstPagePromise.then(function () {
|
|
||||||
self.setInitialView(null, scale);
|
self.setInitialView(null, scale);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user