Reset state upon load if showPreviousViewOnLoad

And moved showPreviousViewOnLoad up to PDFViewerApplication.initialize
This commit is contained in:
Rob Wu 2015-01-27 23:57:46 +01:00
parent a544aed2b0
commit 6a16d7dd44

View File

@ -108,6 +108,7 @@ var PDFViewerApplication = {
mouseScrollDelta: 0, mouseScrollDelta: 0,
preferenceSidebarViewOnLoad: SidebarView.NONE, preferenceSidebarViewOnLoad: SidebarView.NONE,
preferencePdfBugEnabled: false, preferencePdfBugEnabled: false,
preferenceShowPreviousViewOnLoad: true,
isViewerEmbedded: (window.parent !== window), isViewerEmbedded: (window.parent !== window),
url: '', url: '',
@ -226,6 +227,12 @@ var PDFViewerApplication = {
Preferences.get('pdfBugEnabled').then(function resolved(value) { Preferences.get('pdfBugEnabled').then(function resolved(value) {
self.preferencePdfBugEnabled = value; self.preferencePdfBugEnabled = value;
}), }),
Preferences.get('showPreviousViewOnLoad').then(function resolved(value) {
self.preferenceShowPreviousViewOnLoad = value;
if (!value && window.history.state) {
window.history.replaceState(null, '');
}
}),
Preferences.get('disableTextLayer').then(function resolved(value) { Preferences.get('disableTextLayer').then(function resolved(value) {
if (PDFJS.disableTextLayer === true) { if (PDFJS.disableTextLayer === true) {
return; return;
@ -250,6 +257,7 @@ 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) { });
@ -894,11 +902,6 @@ var PDFViewerApplication = {
}); });
// Fetch the necessary preference values. // Fetch the necessary preference values.
var showPreviousViewOnLoad;
var showPreviousViewOnLoadPromise =
Preferences.get('showPreviousViewOnLoad').then(function (prefValue) {
showPreviousViewOnLoad = prefValue;
});
var defaultZoomValue; var defaultZoomValue;
var defaultZoomValuePromise = var defaultZoomValuePromise =
Preferences.get('defaultZoomValue').then(function (prefValue) { Preferences.get('defaultZoomValue').then(function (prefValue) {
@ -906,10 +909,11 @@ var PDFViewerApplication = {
}); });
var storePromise = store.initializedPromise; var storePromise = store.initializedPromise;
Promise.all([firstPagePromise, storePromise, showPreviousViewOnLoadPromise, Promise.all([firstPagePromise, storePromise, defaultZoomValuePromise]).then(
defaultZoomValuePromise]).then(function resolved() { function resolved() {
var storedHash = null; var storedHash = null;
if (showPreviousViewOnLoad && store.get('exists', false)) { if (PDFViewerApplication.preferenceShowPreviousViewOnLoad &&
store.get('exists', false)) {
var pageNum = store.get('page', '1'); var pageNum = store.get('page', '1');
var zoom = defaultZoomValue || var zoom = defaultZoomValue ||
store.get('zoom', self.pdfViewer.currentScale); store.get('zoom', self.pdfViewer.currentScale);