@ -882,7 +882,7 @@ var PDFViewerApplication = {
var pdfThumbnailViewer = this . pdfThumbnailViewer ;
var pdfThumbnailViewer = this . pdfThumbnailViewer ;
pdfThumbnailViewer . setDocument ( pdfDocument ) ;
pdfThumbnailViewer . setDocument ( pdfDocument ) ;
firstPagePromise . then ( function ( pdfPage ) {
firstPagePromise . then ( ( pdfPage ) => {
downloadedPromise . then ( function ( ) {
downloadedPromise . then ( function ( ) {
self . eventBus . dispatch ( 'documentload' , { source : self } ) ;
self . eventBus . dispatch ( 'documentload' , { source : self } ) ;
} ) ;
} ) ;
@ -905,58 +905,65 @@ var PDFViewerApplication = {
}
}
var initialParams = {
var initialParams = {
destination : self . initialDestination ,
destination : this . initialDestination ,
bookmark : self . initialBookmark ,
bookmark : this . initialBookmark ,
hash : null ,
hash : null ,
} ;
} ;
var storedHash = this . viewerPrefs [ 'defaultZoomValue' ] ?
( 'zoom=' + this . viewerPrefs [ 'defaultZoomValue' ] ) : null ;
var sidebarView = this . viewerPrefs [ 'sidebarViewOnLoad' ] ;
store . initializedPromise . then ( function resolved ( ) {
new Promise ( ( resolve , reject ) => {
var storedHash = null , sidebarView = null ;
if ( ! this . viewerPrefs [ 'showPreviousViewOnLoad' ] ) {
if ( self . viewerPrefs [ 'showPreviousViewOnLoad' ] &&
resolve ( ) ;
store . get ( 'exists' , false ) ) {
return ;
var pageNum = store . get ( 'page' , '1' ) ;
var zoom = self . viewerPrefs [ 'defaultZoomValue' ] ||
store . get ( 'zoom' , DEFAULT _SCALE _VALUE ) ;
var left = store . get ( 'scrollLeft' , '0' ) ;
var top = store . get ( 'scrollTop' , '0' ) ;
storedHash = 'page=' + pageNum + '&zoom=' + zoom + ',' +
left + ',' + top ;
sidebarView = store . get ( 'sidebarView' , SidebarView . NONE ) ;
} else if ( self . viewerPrefs [ 'defaultZoomValue' ] ) {
storedHash = 'page=1&zoom=' + self . viewerPrefs [ 'defaultZoomValue' ] ;
}
}
self . setInitialView ( storedHash ,
store . getMultiple ( {
{ scale : scale , sidebarView : sidebarView } ) ;
exists : false ,
page : '1' ,
zoom : DEFAULT _SCALE _VALUE ,
scrollLeft : '0' ,
scrollTop : '0' ,
sidebarView : SidebarView . NONE ,
} ) . then ( ( values ) => {
if ( ! values . exists ) {
resolve ( ) ;
return ;
}
storedHash = 'page=' + values . page +
'&zoom=' + ( this . viewerPrefs [ 'defaultZoomValue' ] || values . zoom ) +
',' + values . scrollLeft + ',' + values . scrollTop ;
sidebarView = this . viewerPrefs [ 'sidebarViewOnLoad' ] ||
( values . sidebarView | 0 ) ;
resolve ( ) ;
} ) . catch ( function ( ) {
resolve ( ) ;
} ) ;
} ) . then ( ( ) => {
this . setInitialView ( storedHash , { sidebarView , scale , } ) ;
initialParams . hash = storedHash ;
initialParams . hash = storedHash ;
// Make all navigation keys work on document load,
// Make all navigation keys work on document load,
// unless the viewer is embedded in a web page.
// unless the viewer is embedded in a web page.
if ( ! self . isViewerEmbedded ) {
if ( ! this . isViewerEmbedded ) {
self . pdfViewer . focus ( ) ;
this . pdfViewer . focus ( ) ;
}
}
} , function rejected ( reason ) {
return pagesPromise ;
console . error ( reason ) ;
} ) . then ( ( ) => {
self . setInitialView ( null , { scale : scale } ) ;
// For documents with different page sizes, once all pages are resolved,
} ) ;
// For documents with different page sizes,
// ensure that the correct location becomes visible on load.
// ensure that the correct location becomes visible on load.
pagesPromise . then ( function resolved ( ) {
if ( ! initialParams . destination && ! initialParams . bookmark &&
if ( ! initialParams . destination && ! initialParams . bookmark &&
! initialParams . hash ) {
! initialParams . hash ) {
return ;
return ;
}
}
if ( self . hasEqualPageSizes ) {
if ( this . hasEqualPageSizes ) {
return ;
return ;
}
}
self . initialDestination = initialParams . destination ;
this . initialDestination = initialParams . destination ;
self . initialBookmark = initialParams . bookmark ;
this . initialBookmark = initialParams . bookmark ;
self . pdfViewer . currentScaleValue = self . pdfViewer . currentScaleValue ;
this . pdfViewer . currentScaleValue = this . pdfViewer . currentScaleValue ;
self . setInitialView ( initialParams . hash ) ;
this . setInitialView ( initialParams . hash ) ;
} ) ;
} ) ;
} ) ;
} ) ;
@ -1085,14 +1092,11 @@ var PDFViewerApplication = {
} ) ;
} ) ;
} ,
} ,
setInitialView : function pdfViewSetInitialView ( storedHash , options ) {
setInitialView ( storedHash , options = { } ) {
var scale = options && options . scale ;
var { scale = 0 , sidebarView = SidebarView . NONE , } = options ;
var sidebarView = options && options . sidebarView ;
this . isInitialViewSet = true ;
this . isInitialViewSet = true ;
this . pdfSidebar . setInitialView ( sidebarView ) ;
this . pdfSidebar . setInitialView ( this . viewerPrefs [ 'sidebarViewOnLoad' ] ||
( sidebarView | 0 ) ) ;
if ( this . initialDestination ) {
if ( this . initialDestination ) {
this . pdfLinkService . navigateTo ( this . initialDestination ) ;
this . pdfLinkService . navigateTo ( this . initialDestination ) ;
@ -1645,25 +1649,21 @@ function webViewerPresentationModeChanged(e) {
active ? PresentationModeState . FULLSCREEN : PresentationModeState . NORMAL ;
active ? PresentationModeState . FULLSCREEN : PresentationModeState . NORMAL ;
}
}
function webViewerSidebarViewChanged ( e ) {
function webViewerSidebarViewChanged ( evt ) {
PDFViewerApplication . pdfRenderingQueue . isThumbnailViewEnabled =
PDFViewerApplication . pdfRenderingQueue . isThumbnailViewEnabled =
PDFViewerApplication . pdfSidebar . isThumbnailViewVisible ;
PDFViewerApplication . pdfSidebar . isThumbnailViewVisible ;
var store = PDFViewerApplication . store ;
var store = PDFViewerApplication . store ;
if ( ! store || ! PDFViewerApplication . isInitialViewSet ) {
if ( store && PDFViewerApplication . isInitialViewSet ) {
// Only update the storage when the document has been loaded *and* rendered.
// Only update the storage when the document has been loaded *and* rendered.
return ;
store . set ( 'sidebarView' , evt . view ) . catch ( function ( ) { } ) ;
}
}
store . initializedPromise . then ( function ( ) {
store . set ( 'sidebarView' , e . view ) . catch ( function ( ) { } ) ;
} ) ;
}
}
function webViewerUpdateViewarea ( e ) {
function webViewerUpdateViewarea ( evt ) {
var location = e . location , store = PDFViewerApplication . store ;
var location = evt . location , store = PDFViewerApplication . store ;
if ( store ) {
if ( store && PDFViewerApplication . isInitialViewSet ) {
store . initializedPromise . then ( function ( ) {
store . setMultiple ( {
store . setMultiple ( {
'exists' : true ,
'exists' : true ,
'page' : location . pageNumber ,
'page' : location . pageNumber ,
@ -1671,7 +1671,6 @@ function webViewerUpdateViewarea(e) {
'scrollLeft' : location . left ,
'scrollLeft' : location . left ,
'scrollTop' : location . top ,
'scrollTop' : location . top ,
} ) . catch ( function ( ) { /* unable to write to storage */ } ) ;
} ) . catch ( function ( ) { /* unable to write to storage */ } ) ;
} ) ;
}
}
var href =
var href =
PDFViewerApplication . pdfLinkService . getAnchorUrl ( location . pdfOpenParams ) ;
PDFViewerApplication . pdfLinkService . getAnchorUrl ( location . pdfOpenParams ) ;