disable transition into and out of overview mode #829
This commit is contained in:
parent
baa6fa45de
commit
a9c2d4d663
4 changed files with 46 additions and 61 deletions
|
@ -1103,9 +1103,7 @@ body {
|
|||
|
||||
|
||||
.reveal.fade.overview .slides section,
|
||||
.reveal.fade.overview .slides>section>section,
|
||||
.reveal.fade.overview-deactivating .slides section,
|
||||
.reveal.fade.overview-deactivating .slides>section>section {
|
||||
.reveal.fade.overview .slides>section>section {
|
||||
-webkit-transition: none;
|
||||
-moz-transition: none;
|
||||
transition: none;
|
||||
|
@ -1155,6 +1153,12 @@ body {
|
|||
cursor: pointer;
|
||||
background: rgba(0,0,0,0.1);
|
||||
}
|
||||
.reveal.overview .slides section,
|
||||
.reveal.overview-deactivating .slides section {
|
||||
-webkit-transition: none !important;
|
||||
-moz-transition: none !important;
|
||||
transition: none !important;
|
||||
}
|
||||
.reveal.overview .slides section .fragment {
|
||||
opacity: 1;
|
||||
}
|
||||
|
|
2
css/reveal.min.css
vendored
2
css/reveal.min.css
vendored
File diff suppressed because one or more lines are too long
89
js/reveal.js
89
js/reveal.js
|
@ -151,12 +151,6 @@ var Reveal = (function(){
|
|||
// Delays updates to the URL due to a Chrome thumbnailer bug
|
||||
writeURLTimeout = 0,
|
||||
|
||||
// A delay used to activate the overview mode
|
||||
activateOverviewTimeout = 0,
|
||||
|
||||
// A delay used to deactivate the overview mode
|
||||
deactivateOverviewTimeout = 0,
|
||||
|
||||
// Flags if the interaction event listeners are bound
|
||||
eventsAreBound = false,
|
||||
|
||||
|
@ -1238,67 +1232,57 @@ var Reveal = (function(){
|
|||
dom.wrapper.classList.add( 'overview' );
|
||||
dom.wrapper.classList.remove( 'overview-deactivating' );
|
||||
|
||||
clearTimeout( activateOverviewTimeout );
|
||||
clearTimeout( deactivateOverviewTimeout );
|
||||
var horizontalSlides = document.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR );
|
||||
|
||||
// Not the pretties solution, but need to let the overview
|
||||
// class apply first so that slides are measured accurately
|
||||
// before we can position them
|
||||
activateOverviewTimeout = setTimeout( function() {
|
||||
for( var i = 0, len1 = horizontalSlides.length; i < len1; i++ ) {
|
||||
var hslide = horizontalSlides[i],
|
||||
hoffset = config.rtl ? -105 : 105;
|
||||
|
||||
var horizontalSlides = document.querySelectorAll( HORIZONTAL_SLIDES_SELECTOR );
|
||||
hslide.setAttribute( 'data-index-h', i );
|
||||
|
||||
for( var i = 0, len1 = horizontalSlides.length; i < len1; i++ ) {
|
||||
var hslide = horizontalSlides[i],
|
||||
hoffset = config.rtl ? -105 : 105;
|
||||
// Apply CSS transform
|
||||
transformElement( hslide, 'translateZ(-'+ depth +'px) translate(' + ( ( i - indexh ) * hoffset ) + '%, 0%)' );
|
||||
|
||||
hslide.setAttribute( 'data-index-h', i );
|
||||
if( hslide.classList.contains( 'stack' ) ) {
|
||||
|
||||
// Apply CSS transform
|
||||
transformElement( hslide, 'translateZ(-'+ depth +'px) translate(' + ( ( i - indexh ) * hoffset ) + '%, 0%)' );
|
||||
var verticalSlides = hslide.querySelectorAll( 'section' );
|
||||
|
||||
if( hslide.classList.contains( 'stack' ) ) {
|
||||
for( var j = 0, len2 = verticalSlides.length; j < len2; j++ ) {
|
||||
var verticalIndex = i === indexh ? indexv : getPreviousVerticalIndex( hslide );
|
||||
|
||||
var verticalSlides = hslide.querySelectorAll( 'section' );
|
||||
var vslide = verticalSlides[j];
|
||||
|
||||
for( var j = 0, len2 = verticalSlides.length; j < len2; j++ ) {
|
||||
var verticalIndex = i === indexh ? indexv : getPreviousVerticalIndex( hslide );
|
||||
vslide.setAttribute( 'data-index-h', i );
|
||||
vslide.setAttribute( 'data-index-v', j );
|
||||
|
||||
var vslide = verticalSlides[j];
|
||||
|
||||
vslide.setAttribute( 'data-index-h', i );
|
||||
vslide.setAttribute( 'data-index-v', j );
|
||||
|
||||
// Apply CSS transform
|
||||
transformElement( vslide, 'translate(0%, ' + ( ( j - verticalIndex ) * 105 ) + '%)' );
|
||||
|
||||
// Navigate to this slide on click
|
||||
vslide.addEventListener( 'click', onOverviewSlideClicked, true );
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
// Apply CSS transform
|
||||
transformElement( vslide, 'translate(0%, ' + ( ( j - verticalIndex ) * 105 ) + '%)' );
|
||||
|
||||
// Navigate to this slide on click
|
||||
hslide.addEventListener( 'click', onOverviewSlideClicked, true );
|
||||
|
||||
vslide.addEventListener( 'click', onOverviewSlideClicked, true );
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
updateSlidesVisibility();
|
||||
// Navigate to this slide on click
|
||||
hslide.addEventListener( 'click', onOverviewSlideClicked, true );
|
||||
|
||||
layout();
|
||||
|
||||
if( !wasActive ) {
|
||||
// Notify observers of the overview showing
|
||||
dispatchEvent( 'overviewshown', {
|
||||
'indexh': indexh,
|
||||
'indexv': indexv,
|
||||
'currentSlide': currentSlide
|
||||
} );
|
||||
}
|
||||
}
|
||||
|
||||
}, 10 );
|
||||
updateSlidesVisibility();
|
||||
|
||||
layout();
|
||||
|
||||
if( !wasActive ) {
|
||||
// Notify observers of the overview showing
|
||||
dispatchEvent( 'overviewshown', {
|
||||
'indexh': indexh,
|
||||
'indexv': indexv,
|
||||
'currentSlide': currentSlide
|
||||
} );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -1313,9 +1297,6 @@ var Reveal = (function(){
|
|||
// Only proceed if enabled in config
|
||||
if( config.overview ) {
|
||||
|
||||
clearTimeout( activateOverviewTimeout );
|
||||
clearTimeout( deactivateOverviewTimeout );
|
||||
|
||||
dom.wrapper.classList.remove( 'overview' );
|
||||
|
||||
// Temporarily add a class so that transitions can do different things
|
||||
|
@ -1323,7 +1304,7 @@ var Reveal = (function(){
|
|||
// moving from slide to slide
|
||||
dom.wrapper.classList.add( 'overview-deactivating' );
|
||||
|
||||
deactivateOverviewTimeout = setTimeout( function () {
|
||||
setTimeout( function () {
|
||||
dom.wrapper.classList.remove( 'overview-deactivating' );
|
||||
}, 1 );
|
||||
|
||||
|
|
6
js/reveal.min.js
vendored
6
js/reveal.min.js
vendored
File diff suppressed because one or more lines are too long
Loading…
Reference in a new issue