website/reveal/js/reveal.js
/**
	 * Displays the overview of slides (quick nav) by
	 * scaling down and arranging all slide elements.
	 *
	 * Experimental feature, might be dropped if perf
	 * can't be improved.
	 */
Displays the overview of slides (quick nav) by
scaling down and arranging all slide elements.

Experimental feature, might be dropped if perf
can't be improved.
Displays the overview of slides ( quick nav ) by scaling down and arranging all slide elements . Experimental feature might be dropped if perf can ' t be improved .
function activateOverview() {
		if( config.overview ) {
			cancelAutoSlide();
			var wasActive = dom.wrapper.classList.contains( 'overview' );
			var depth = window.innerWidth < 400 ? 1000 : 2500;
			dom.wrapper.classList.add( 'overview' );
			dom.wrapper.classList.remove( 'overview-deactivating' );
			clearTimeout( activateOverviewTimeout );
			clearTimeout( deactivateOverviewTimeout );
			activateOverviewTimeout = setTimeout( function() {
				var horizontalSlides = document.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR );
				for( var i = 0, len1 = horizontalSlides.length; i < len1; i++ ) {
					var hslide = horizontalSlides[i],
						hoffset = config.rtl ? -105 : 105;
					hslide.setAttribute( 'data-index-h', i );
					transformElement( hslide, 'translateZ(-'+ depth +'px) translate(' + ( ( i - indexh ) * hoffset ) + '%, 0%)' );
					if( hslide.classList.contains( 'stack' ) ) {
						var verticalSlides = hslide.querySelectorAll( 'section' );
						for( var j = 0, len2 = verticalSlides.length; j < len2; j++ ) {
							var verticalIndex = i === indexh ? indexv : getPreviousVerticalIndex( hslide );
							var vslide = verticalSlides[j];
							vslide.setAttribute( 'data-index-h', i );
							vslide.setAttribute( 'data-index-v', j );
							transformElement( vslide, 'translate(0%, ' + ( ( j - verticalIndex ) * 105 ) + '%)' );
							vslide.addEventListener( 'click', onOverviewSlideClicked, true );
						}
					}
					else {
						hslide.addEventListener( 'click', onOverviewSlideClicked, true );
					}
				}
				updateSlidesVisibility();
				layout();
				if( !wasActive ) {
					dispatchEvent( 'overviewshown', {
						'indexh': indexh,
						'indexv': indexv,
						'currentSlide': currentSlide
					} );
				}
			}, 10 );
		}
	}
function activateOverview ( ) { if ( config . overview ) { cancelAutoSlide ( ) ; var wasActive = dom . wrapper . classList . contains ( 'overview' ) ; var depth = window . innerWidth < 400 ? 1000 : 2500 ; dom . wrapper . classList . add ( 'overview' ) ; dom . wrapper . classList . remove ( 'overview-deactivating' ) ; clearTimeout ( activateOverviewTimeout ) ; clearTimeout ( deactivateOverviewTimeout ) ; activateOverviewTimeout = setTimeout ( function ( ) { var horizontalSlides = document . querySelectorAll ( HORIZONTAL_SLIDES_SELECTOR ) ; for ( var i = 0 , len1 = horizontalSlides . length ; i < len1 ; i ++ ) { var hslide = horizontalSlides [ i ] , hoffset = config . rtl ? - 105 : 105 ; hslide . setAttribute ( 'data-index-h' , i ) ; transformElement ( hslide , 'translateZ(-' + depth + 'px) translate(' + ( ( i - indexh ) * hoffset ) + '%, 0%)' ) ; if ( hslide . classList . contains ( 'stack' ) ) { var verticalSlides = hslide . querySelectorAll ( 'section' ) ; for ( var j = 0 , len2 = verticalSlides . length ; j < len2 ; j ++ ) { var verticalIndex = i === indexh ? indexv : getPreviousVerticalIndex ( hslide ) ; var vslide = verticalSlides [ j ] ; vslide . setAttribute ( 'data-index-h' , i ) ; vslide . setAttribute ( 'data-index-v' , j ) ; transformElement ( vslide , 'translate(0%, ' + ( ( j - verticalIndex ) * 105 ) + '%)' ) ; vslide . addEventListener ( 'click' , onOverviewSlideClicked , true ) ; } } else { hslide . addEventListener ( 'click' , onOverviewSlideClicked , true ) ; } } updateSlidesVisibility ( ) ; layout ( ) ; if ( ! wasActive ) { dispatchEvent ( 'overviewshown' , { 'indexh' : indexh , 'indexv' : indexv , 'currentSlide' : currentSlide } ) ; } } , 10 ) ; } }
Displays the overview of slides (quick nav) by
 scaling down and arranging all slide elements.
Displays the overview of slides ( quick nav ) by scaling down and arranging all slide elements .
// Only proceed if enabled in config // Don't auto-slide while in overview mode // Vary the depth of the overview based on screen size // Not the pretties solution, but need to let the overview // class apply first so that slides are measured accurately // before we can position them // Apply CSS transform // Apply CSS transform // Navigate to this slide on click // Navigate to this slide on click // Notify observers of the overview showing