From 9660cdbd26524ea220bec5fa2edca6dec5935284 Mon Sep 17 00:00:00 2001 From: Hakim El Hattab Date: Wed, 30 Jan 2013 23:59:37 -0500 Subject: add min/max scale settings (#310) --- js/reveal.js | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'js/reveal.js') diff --git a/js/reveal.js b/js/reveal.js index e3938f0..c42af27 100644 --- a/js/reveal.js +++ b/js/reveal.js @@ -19,11 +19,16 @@ var Reveal = (function(){ // The "normal" size of the presentation, aspect ratio will be preserved // when the presentation is scaled to fit different resolutions - width: 1024, - height: 768, + width: 960, + height: 700, + // Factor of the display size that should remain empty around the content margin: 0.1, + // Bounds for smallest/largest possible scale to apply to content + minScale: 0.2, + maxScale: 1.4, + // Display controls in the bottom right corner controls: true, @@ -588,6 +593,10 @@ var Reveal = (function(){ // Determine scale of content to fit within available space var scale = Math.min( availableWidth / slideWidth, availableHeight / slideHeight ); + // Respect max/min scale settings + scale = Math.max( scale, config.minScale ); + scale = Math.min( scale, config.maxScale ); + // Prefer applying scale via zoom since Chrome blurs scaled content // with nested transforms if( typeof dom.slides.style.zoom !== 'undefined' && !navigator.userAgent.match( /(iphone|ipod|android)/gi ) ) { @@ -1123,7 +1132,7 @@ var Reveal = (function(){ var slideAutoSlide = slides[index].getAttribute( 'data-autoslide' ); if( slideAutoSlide ) { autoSlide = parseInt( slideAutoSlide, 10 ); - } + } else { autoSlide = config.autoSlide; } -- cgit v1.2.3