@@ -434,21 +434,22 @@ function makeDragRow(cellsColumnBlock) {
434
434
return 'translate(0 ' + yTranslate + ')' ;
435
435
} ) ;
436
436
437
- function rerenderIfNeeded ( revolverIndex ) {
438
- if ( pages [ revolverIndex ] !== prevPages [ revolverIndex ] ) {
439
- window . clearTimeout ( d . currentRepaint [ revolverIndex ] ) ;
440
- d . currentRepaint [ revolverIndex ] = window . setTimeout ( function ( ) {
441
- // setTimeout might lag rendering but yields a smoother scroll, because fast scrolling makes
442
- // some repaints invisible ie. wasteful (DOM work blocks the main thread)
443
- var toRerender = cellsColumnBlock . filter ( function ( d , i ) { return i === revolverIndex && pages [ i ] !== prevPages [ i ] ; } ) ;
444
- renderColumnBlocks ( gd , toRerender , toRerender ) ;
445
- prevPages [ revolverIndex ] = pages [ revolverIndex ] ;
446
- } ) ;
447
- }
448
- }
437
+ // conditionally rerendering panel 0 and 1
438
+ conditionalPanelRerender ( cellsColumnBlock , pages , prevPages , d , 0 ) ;
439
+ conditionalPanelRerender ( cellsColumnBlock , pages , prevPages , d , 1 ) ;
440
+ }
441
+ }
449
442
450
- rerenderIfNeeded ( 0 ) ;
451
- rerenderIfNeeded ( 1 ) ;
443
+ function conditionalPanelRerender ( cellsColumnBlock , pages , prevPages , d , revolverIndex ) {
444
+ if ( pages [ revolverIndex ] !== prevPages [ revolverIndex ] ) {
445
+ window . clearTimeout ( d . currentRepaint [ revolverIndex ] ) ;
446
+ d . currentRepaint [ revolverIndex ] = window . setTimeout ( function ( ) {
447
+ // setTimeout might lag rendering but yields a smoother scroll, because fast scrolling makes
448
+ // some repaints invisible ie. wasteful (DOM work blocks the main thread)
449
+ var toRerender = cellsColumnBlock . filter ( function ( d , i ) { return i === revolverIndex && pages [ i ] !== prevPages [ i ] ; } ) ;
450
+ renderColumnBlocks ( gd , toRerender , toRerender ) ;
451
+ prevPages [ revolverIndex ] = pages [ revolverIndex ] ;
452
+ } ) ;
452
453
}
453
454
}
454
455
0 commit comments