@@ -127,35 +127,7 @@ const addEventListener = (el, pdfViewer, eventBus, invoke, options) => {
127127
128128 eventBus . on ( "pagesloaded" , async e => {
129129 if ( options . enableThumbnails ) {
130- const thumbnailsContainer = el . querySelector ( ".bb-view-thumbnails" ) ;
131- pdfViewer . getPagesOverview ( ) . map ( async ( p , i ) => {
132- const item = document . createElement ( "div" ) ;
133- item . classList . add ( "bb-view-thumbnail-item" ) ;
134- if ( pdfViewer . currentPageNumber === i + 1 ) {
135- item . classList . add ( "active" ) ;
136- }
137- item . setAttribute ( "data-bb-page" , `${ i + 1 } ` ) ;
138- thumbnailsContainer . appendChild ( item ) ;
139-
140- const page = await pdfViewer . pdfDocument . getPage ( i + 1 ) ;
141- const canvas = await makeThumb ( page ) ;
142- const img = document . createElement ( "img" ) ;
143- img . src = canvas . toDataURL ( ) ;
144- item . appendChild ( img ) ;
145- } ) ;
146-
147- EventHandler . on ( thumbnailsContainer , "click" , ".bb-view-thumbnail-item" , e => {
148- const active = thumbnailsContainer . querySelector ( '.active' ) ;
149- if ( active ) {
150- active . classList . remove ( 'active' ) ;
151- }
152-
153- const item = e . delegateTarget ;
154- item . classList . add ( "active" ) ;
155-
156- const index = parseInt ( item . getAttribute ( "data-bb-page" ) ) || 1 ;
157- pdfViewer . currentPageNumber = index ;
158- } )
130+ resetThumbnailsView ( el , pdfViewer ) ;
159131 }
160132
161133 if ( options . triggerPagesLoaded === true ) {
@@ -232,6 +204,45 @@ const addEventListener = (el, pdfViewer, eventBus, invoke, options) => {
232204 thumbnailsEl . classList . toggle ( "show" ) ;
233205 } ) ;
234206 }
207+
208+ eventBus . on ( "rotationchanging" , evt => {
209+ const thumbnailsContainer = el . querySelector ( ".bb-view-thumbnails" ) ;
210+ if ( thumbnailsContainer ) {
211+ thumbnailsContainer . style . setProperty ( '--thumb-rotate' , `${ evt . pagesRotation } deg` ) ;
212+ }
213+ } )
214+ }
215+
216+ const resetThumbnailsView = ( el , pdfViewer ) => {
217+ const thumbnailsContainer = el . querySelector ( ".bb-view-thumbnails" ) ;
218+ pdfViewer . getPagesOverview ( ) . map ( async ( p , i ) => {
219+ const item = document . createElement ( "div" ) ;
220+ item . classList . add ( "bb-view-thumbnail-item" ) ;
221+ if ( pdfViewer . currentPageNumber === i + 1 ) {
222+ item . classList . add ( "active" ) ;
223+ }
224+ item . setAttribute ( "data-bb-page" , `${ i + 1 } ` ) ;
225+ thumbnailsContainer . appendChild ( item ) ;
226+
227+ const page = await pdfViewer . pdfDocument . getPage ( i + 1 ) ;
228+ const canvas = await makeThumb ( page ) ;
229+ const img = document . createElement ( "img" ) ;
230+ img . src = canvas . toDataURL ( ) ;
231+ item . appendChild ( img ) ;
232+ } ) ;
233+
234+ EventHandler . on ( thumbnailsContainer , "click" , ".bb-view-thumbnail-item" , e => {
235+ const active = thumbnailsContainer . querySelector ( '.active' ) ;
236+ if ( active ) {
237+ active . classList . remove ( 'active' ) ;
238+ }
239+
240+ const item = e . delegateTarget ;
241+ item . classList . add ( "active" ) ;
242+
243+ const index = parseInt ( item . getAttribute ( "data-bb-page" ) ) || 1 ;
244+ pdfViewer . currentPageNumber = index ;
245+ } ) ;
235246}
236247
237248const updateScale = ( pdfViewer , button , rate ) => {
0 commit comments