@ -183,69 +183,6 @@ var PDFViewerApplication = {
// called once when the document is loaded
// called once when the document is loaded
initialize : function pdfViewInitialize ( appConfig ) {
initialize : function pdfViewInitialize ( appConfig ) {
var self = this ;
var PDFJS = pdfjsLib . PDFJS ;
Preferences . initialize ( ) ;
this . preferences = Preferences ;
// Fetch the `Preferences` first, so that they can be used below when the
// various viewer components are initialized.
var preferencesPromise = Promise . all ( [
Preferences . get ( 'enableWebGL' ) . then ( function resolved ( value ) {
PDFJS . disableWebGL = ! value ;
} ) ,
Preferences . get ( 'sidebarViewOnLoad' ) . then ( function resolved ( value ) {
self . preferenceSidebarViewOnLoad = value ;
} ) ,
Preferences . get ( 'pdfBugEnabled' ) . then ( function resolved ( value ) {
self . preferencePdfBugEnabled = value ;
} ) ,
Preferences . get ( 'showPreviousViewOnLoad' ) . then ( function resolved ( value ) {
self . preferenceShowPreviousViewOnLoad = value ;
} ) ,
Preferences . get ( 'defaultZoomValue' ) . then ( function resolved ( value ) {
self . preferenceDefaultZoomValue = value ;
} ) ,
Preferences . get ( 'disableTextLayer' ) . then ( function resolved ( value ) {
if ( PDFJS . disableTextLayer === true ) {
return ;
}
PDFJS . disableTextLayer = value ;
} ) ,
Preferences . get ( 'disableRange' ) . then ( function resolved ( value ) {
if ( PDFJS . disableRange === true ) {
return ;
}
PDFJS . disableRange = value ;
} ) ,
Preferences . get ( 'disableStream' ) . then ( function resolved ( value ) {
if ( PDFJS . disableStream === true ) {
return ;
}
PDFJS . disableStream = value ;
} ) ,
Preferences . get ( 'disableAutoFetch' ) . then ( function resolved ( value ) {
PDFJS . disableAutoFetch = value ;
} ) ,
Preferences . get ( 'disableFontFace' ) . then ( function resolved ( value ) {
if ( PDFJS . disableFontFace === true ) {
return ;
}
PDFJS . disableFontFace = value ;
} ) ,
Preferences . get ( 'useOnlyCssZoom' ) . then ( function resolved ( value ) {
PDFJS . useOnlyCssZoom = value ;
} ) ,
Preferences . get ( 'externalLinkTarget' ) . then ( function resolved ( value ) {
if ( PDFJS . isExternalLinkTargetSet ( ) ) {
return ;
}
PDFJS . externalLinkTarget = value ;
} ) ,
// TODO move more preferences and other async stuff here
] ) . catch ( function ( reason ) { } ) ;
var initializedPromise = preferencesPromise . then ( function ( ) {
configure ( pdfjsLib . PDFJS ) ;
configure ( pdfjsLib . PDFJS ) ;
this . appConfig = appConfig ;
this . appConfig = appConfig ;
@ -287,6 +224,9 @@ var PDFViewerApplication = {
} ) ;
} ) ;
pdfRenderingQueue . setThumbnailViewer ( this . pdfThumbnailViewer ) ;
pdfRenderingQueue . setThumbnailViewer ( this . pdfThumbnailViewer ) ;
Preferences . initialize ( ) ;
this . preferences = Preferences ;
this . pdfHistory = new PDFHistory ( {
this . pdfHistory = new PDFHistory ( {
linkService : pdfLinkService ,
linkService : pdfLinkService ,
eventBus : this . eventBus
eventBus : this . eventBus
@ -302,8 +242,7 @@ var PDFViewerApplication = {
}
}
this . findBar . updateResultsCount ( matchCount ) ;
this . findBar . updateResultsCount ( matchCount ) ;
} . bind ( this ) ;
} . bind ( this ) ;
this . findController . onUpdateState = function ( state , previous ,
this . findController . onUpdateState = function ( state , previous , matchCount ) {
matchCount ) {
if ( this . supportsIntegratedFind ) {
if ( this . supportsIntegratedFind ) {
this . externalServices . updateFindControlState (
this . externalServices . updateFindControlState (
{ result : state , findPrevious : previous } ) ;
{ result : state , findPrevious : previous } ) ;
@ -366,7 +305,62 @@ var PDFViewerApplication = {
this . pdfSidebar = new PDFSidebar ( sidebarConfig ) ;
this . pdfSidebar = new PDFSidebar ( sidebarConfig ) ;
this . pdfSidebar . onToggled = this . forceRendering . bind ( this ) ;
this . pdfSidebar . onToggled = this . forceRendering . bind ( this ) ;
} . bind ( this ) ) ;
var self = this ;
var PDFJS = pdfjsLib . PDFJS ;
var initializedPromise = Promise . all ( [
Preferences . get ( 'enableWebGL' ) . then ( function resolved ( value ) {
PDFJS . disableWebGL = ! value ;
} ) ,
Preferences . get ( 'sidebarViewOnLoad' ) . then ( function resolved ( value ) {
self . preferenceSidebarViewOnLoad = value ;
} ) ,
Preferences . get ( 'pdfBugEnabled' ) . then ( function resolved ( value ) {
self . preferencePdfBugEnabled = value ;
} ) ,
Preferences . get ( 'showPreviousViewOnLoad' ) . then ( function resolved ( value ) {
self . preferenceShowPreviousViewOnLoad = value ;
} ) ,
Preferences . get ( 'defaultZoomValue' ) . then ( function resolved ( value ) {
self . preferenceDefaultZoomValue = value ;
} ) ,
Preferences . get ( 'disableTextLayer' ) . then ( function resolved ( value ) {
if ( PDFJS . disableTextLayer === true ) {
return ;
}
PDFJS . disableTextLayer = value ;
} ) ,
Preferences . get ( 'disableRange' ) . then ( function resolved ( value ) {
if ( PDFJS . disableRange === true ) {
return ;
}
PDFJS . disableRange = value ;
} ) ,
Preferences . get ( 'disableStream' ) . then ( function resolved ( value ) {
if ( PDFJS . disableStream === true ) {
return ;
}
PDFJS . disableStream = value ;
} ) ,
Preferences . get ( 'disableAutoFetch' ) . then ( function resolved ( value ) {
PDFJS . disableAutoFetch = value ;
} ) ,
Preferences . get ( 'disableFontFace' ) . then ( function resolved ( value ) {
if ( PDFJS . disableFontFace === true ) {
return ;
}
PDFJS . disableFontFace = value ;
} ) ,
Preferences . get ( 'useOnlyCssZoom' ) . then ( function resolved ( value ) {
PDFJS . useOnlyCssZoom = value ;
} ) ,
Preferences . get ( 'externalLinkTarget' ) . then ( function resolved ( value ) {
if ( PDFJS . isExternalLinkTargetSet ( ) ) {
return ;
}
PDFJS . externalLinkTarget = value ;
} ) ,
// TODO move more preferences and other async stuff here
] ) . catch ( function ( reason ) { } ) ;
return initializedPromise . then ( function ( ) {
return initializedPromise . then ( function ( ) {
if ( self . isViewerEmbedded && ! PDFJS . isExternalLinkTargetSet ( ) ) {
if ( self . isViewerEmbedded && ! PDFJS . isExternalLinkTargetSet ( ) ) {