enable keyboard/touch flags to change in runtime configure() call (closes #365)

This commit is contained in:
Hakim El Hattab committed 2013-03-17 08:21:17 -04:00
1 parent 92e605c69d
commit e74a10e364
2 files changed
+16 -5

No files matched your search

+14 -3
View File
@@ -306,9 +306,6 @@ var Reveal = (function(){
// Make sure we've got all the DOM elements we need // Make sure we've got all the DOM elements we need
setupDOM(); setupDOM();
// Subscribe to input
addEventListeners();
// Updates the presentation to match the current configuration values // Updates the presentation to match the current configuration values
configure(); configure();
@@ -394,6 +391,20 @@ var Reveal = (function(){
} }
} }
postConfigure();
}
/**
* Updates various parts of the presentatio after the
* configuration has changed.
*/
function postConfigure() {
// Subscribe to input
removeEventListeners();
addEventListeners();
// Force a layout to make sure the current config is accounted for // Force a layout to make sure the current config is accounted for
layout(); layout();
+2 -2
View File
@@ -1,8 +1,8 @@
/*! /*!
* reveal.js 2.4.0 (2013-03-17, 08:14) * reveal.js 2.4.0 (2013-03-17, 08:20)
* http://lab.hakim.se/reveal-js * http://lab.hakim.se/reveal-js
* MIT licensed * MIT licensed
* *
* Copyright (C) 2013 Hakim El Hattab, http://hakim.se * Copyright (C) 2013 Hakim El Hattab, http://hakim.se
*/ */
var Reveal=function(){"use strict";function e(e){return At||St?(window.addEventListener("load",h,!1),c(ht,e),n(),r(),void 0):(document.body.setAttribute("class","no-transforms"),void 0)}function t(){if(Et.theme=document.querySelector("#theme"),Et.wrapper=document.querySelector(".reveal"),Et.slides=document.querySelector(".reveal .slides"),!Et.wrapper.querySelector(".progress")&&ht.progress){var e=document.createElement("div");e.classList.add("progress"),e.innerHTML="<span></span>",Et.wrapper.appendChild(e)}if(!Et.wrapper.querySelector(".controls")&&ht.controls){var t=document.createElement("aside");t.classList.add("controls"),t.innerHTML='<div class="navigate-left"></div><div class="navigate-right"></div><div class="navigate-up"></div><div class="navigate-down"></div>',Et.wrapper.appendChild(t)}if(!Et.wrapper.querySelector(".state-background")){var n=document.createElement("div");n.classList.add("state-background"),Et.wrapper.appendChild(n)}if(!Et.wrapper.querySelector(".pause-overlay")){var r=document.createElement("div");r.classList.add("pause-overlay"),Et.wrapper.appendChild(r)}Et.progress=document.querySelector(".reveal .progress"),Et.progressbar=document.querySelector(".reveal .progress span"),ht.controls&&(Et.controls=document.querySelector(".reveal .controls"),Et.controlsLeft=l(document.querySelectorAll(".navigate-left")),Et.controlsRight=l(document.querySelectorAll(".navigate-right")),Et.controlsUp=l(document.querySelectorAll(".navigate-up")),Et.controlsDown=l(document.querySelectorAll(".navigate-down")),Et.controlsPrev=l(document.querySelectorAll(".navigate-prev")),Et.controlsNext=l(document.querySelectorAll(".navigate-next")))}function n(){/iphone|ipod|android/gi.test(navigator.userAgent)&&!/crios/gi.test(navigator.userAgent)&&(window.addEventListener("load",u,!1),window.addEventListener("orientationchange",u,!1))}function r(){function e(){n.length&&head.js.apply(null,n),o()}for(var t=[],n=[],r=0,s=ht.dependencies.length;s>r;r++){var a=ht.dependencies[r];(!a.condition||a.condition())&&(a.async?n.push(a.src):t.push(a.src),"function"==typeof a.callback&&head.ready(a.src.match(/([\w\d_\-]*)\.?js$|[^\\\/]*$/i)[0],a.callback))}t.length?(head.ready(e),head.js.apply(null,t)):e()}function o(){t(),a(),s(),C(),setTimeout(function(){v("ready",{indexh:gt,indexv:wt,currentSlide:ut})},1)}function s(e){if(Et.wrapper.classList.remove(ht.transition),"object"==typeof e&&c(ht,e),St===!1&&(ht.transition="linear"),Et.wrapper.classList.add(ht.transition),Et.controls&&(Et.controls.style.display=ht.controls&&Et.controls?"block":"none"),Et.progress&&(Et.progress.style.display=ht.progress&&Et.progress?"block":"none"),ht.rtl?Et.wrapper.classList.add("rtl"):Et.wrapper.classList.remove("rtl"),ht.center?Et.wrapper.classList.add("center"):Et.wrapper.classList.remove("center"),ht.mouseWheel?(document.addEventListener("DOMMouseScroll",J,!1),document.addEventListener("mousewheel",J,!1)):(document.removeEventListener("DOMMouseScroll",J,!1),document.removeEventListener("mousewheel",J,!1)),ht.rollingLinks?f():p(),ht.theme&&Et.theme){var t=Et.theme.getAttribute("href"),n=/[^\/]*?(?=\.css)/,r=t.match(n)[0];ht.theme!==r&&(t=t.replace(n,ht.theme),Et.theme.setAttribute("href",t))}h(),yt=ht.autoSlide,I()}function a(){Pt=!0,window.addEventListener("hashchange",it,!1),window.addEventListener("resize",ct,!1),ht.touch&&(Et.wrapper.addEventListener("touchstart",$,!1),Et.wrapper.addEventListener("touchmove",Z,!1),Et.wrapper.addEventListener("touchend",Q,!1),window.navigator.msPointerEnabled&&(Et.wrapper.addEventListener("MSPointerDown",V,!1),Et.wrapper.addEventListener("MSPointerMove",B,!1),Et.wrapper.addEventListener("MSPointerUp",G,!1))),ht.keyboard&&document.addEventListener("keydown",K,!1),ht.progress&&Et.progress&&Et.progress.addEventListener("click",et,!1),ht.controls&&Et.controls&&["touchstart","click"].forEach(function(e){Et.controlsLeft.forEach(function(t){t.addEventListener(e,tt,!1)}),Et.controlsRight.forEach(function(t){t.addEventListener(e,nt,!1)}),Et.controlsUp.forEach(function(t){t.addEventListener(e,rt,!1)}),Et.controlsDown.forEach(function(t){t.addEventListener(e,ot,!1)}),Et.controlsPrev.forEach(function(t){t.addEventListener(e,st,!1)}),Et.controlsNext.forEach(function(t){t.addEventListener(e,at,!1)})})}function i(){Pt=!1,document.removeEventListener("keydown",K,!1),window.removeEventListener("hashchange",it,!1),window.removeEventListener("resize",ct,!1),ht.touch&&(Et.wrapper.removeEventListener("touchstart",$,!1),Et.wrapper.removeEventListener("touchmove",Z,!1),Et.wrapper.removeEventListener("touchend",Q,!1),window.navigator.msPointerEnabled&&(Et.wrapper.removeEventListener("MSPointerDown",V,!1),Et.wrapper.removeEventListener("MSPointerMove",B,!1),Et.wrapper.removeEventListener("MSPointerUp",G,!1))),ht.progress&&Et.progress&&Et.progress.removeEventListener("click",et,!1),ht.controls&&Et.controls&&["touchstart","click"].forEach(function(e){Et.controlsLeft.forEach(function(t){t.removeEventListener(e,tt,!1)}),Et.controlsRight.forELine truncated var Reveal=function(){"use strict";function e(e){return qt||At?(window.addEventListener("load",y,!1),l(yt,e),n(),r(),void 0):(document.body.setAttribute("class","no-transforms"),void 0)}function t(){if(St.theme=document.querySelector("#theme"),St.wrapper=document.querySelector(".reveal"),St.slides=document.querySelector(".reveal .slides"),!St.wrapper.querySelector(".progress")&&yt.progress){var e=document.createElement("div");e.classList.add("progress"),e.innerHTML="<span></span>",St.wrapper.appendChild(e)}if(!St.wrapper.querySelector(".controls")&&yt.controls){var t=document.createElement("aside");t.classList.add("controls"),t.innerHTML='<div class="navigate-left"></div><div class="navigate-right"></div><div class="navigate-up"></div><div class="navigate-down"></div>',St.wrapper.appendChild(t)}if(!St.wrapper.querySelector(".state-background")){var n=document.createElement("div");n.classList.add("state-background"),St.wrapper.appendChild(n)}if(!St.wrapper.querySelector(".pause-overlay")){var r=document.createElement("div");r.classList.add("pause-overlay"),St.wrapper.appendChild(r)}St.progress=document.querySelector(".reveal .progress"),St.progressbar=document.querySelector(".reveal .progress span"),yt.controls&&(St.controls=document.querySelector(".reveal .controls"),St.controlsLeft=d(document.querySelectorAll(".navigate-left")),St.controlsRight=d(document.querySelectorAll(".navigate-right")),St.controlsUp=d(document.querySelectorAll(".navigate-up")),St.controlsDown=d(document.querySelectorAll(".navigate-down")),St.controlsPrev=d(document.querySelectorAll(".navigate-prev")),St.controlsNext=d(document.querySelectorAll(".navigate-next")))}function n(){/iphone|ipod|android/gi.test(navigator.userAgent)&&!/crios/gi.test(navigator.userAgent)&&(window.addEventListener("load",v,!1),window.addEventListener("orientationchange",v,!1))}function r(){function e(){n.length&&head.js.apply(null,n),o()}for(var t=[],n=[],r=0,s=yt.dependencies.length;s>r;r++){var a=yt.dependencies[r];(!a.condition||a.condition())&&(a.async?n.push(a.src):t.push(a.src),"function"==typeof a.callback&&head.ready(a.src.match(/([\w\d_\-]*)\.?js$|[^\\\/]*$/i)[0],a.callback))}t.length?(head.ready(e),head.js.apply(null,t)):e()}function o(){t(),s(),O(),setTimeout(function(){f("ready",{indexh:wt,indexv:Lt,currentSlide:vt})},1)}function s(e){if(St.wrapper.classList.remove(yt.transition),"object"==typeof e&&l(yt,e),At===!1&&(yt.transition="linear"),St.wrapper.classList.add(yt.transition),St.controls&&(St.controls.style.display=yt.controls&&St.controls?"block":"none"),St.progress&&(St.progress.style.display=yt.progress&&St.progress?"block":"none"),yt.rtl?St.wrapper.classList.add("rtl"):St.wrapper.classList.remove("rtl"),yt.center?St.wrapper.classList.add("center"):St.wrapper.classList.remove("center"),yt.mouseWheel?(document.addEventListener("DOMMouseScroll",et,!1),document.addEventListener("mousewheel",et,!1)):(document.removeEventListener("DOMMouseScroll",et,!1),document.removeEventListener("mousewheel",et,!1)),yt.rollingLinks?p():m(),yt.theme&&St.theme){var t=St.theme.getAttribute("href"),n=/[^\/]*?(?=\.css)/,r=t.match(n)[0];yt.theme!==r&&(t=t.replace(n,yt.theme),St.theme.setAttribute("href",t))}a()}function a(){c(),i(),y(),gt=yt.autoSlide,R()}function i(){Dt=!0,window.addEventListener("hashchange",ct,!1),window.addEventListener("resize",lt,!1),yt.touch&&(St.wrapper.addEventListener("touchstart",Z,!1),St.wrapper.addEventListener("touchmove",Q,!1),St.wrapper.addEventListener("touchend",V,!1),window.navigator.msPointerEnabled&&(St.wrapper.addEventListener("MSPointerDown",B,!1),St.wrapper.addEventListener("MSPointerMove",G,!1),St.wrapper.addEventListener("MSPointerUp",J,!1))),yt.keyboard&&document.addEventListener("keydown",$,!1),yt.progress&&St.progress&&St.progress.addEventListener("click",tt,!1),yt.controls&&St.controls&&["touchstart","click"].forEach(function(e){St.controlsLeft.forEach(function(t){t.addEventListener(e,nt,!1)}),St.controlsRight.forEach(function(t){t.addEventListener(e,rt,!1)}),St.controlsUp.forEach(function(t){t.addEventListener(e,ot,!1)}),St.controlsDown.forEach(function(t){t.addEventListener(e,st,!1)}),St.controlsPrev.forEach(function(t){t.addEventListener(e,at,!1)}),St.controlsNext.forEach(function(t){t.addEventListener(e,it,!1)})})}function c(){Dt=!1,document.removeEventListener("keydown",$,!1),window.removeEventListener("hashchange",ct,!1),window.removeEventListener("resize",lt,!1),yt.touch&&(St.wrapper.removeEventListener("touchstart",Z,!1),St.wrapper.removeEventListener("touchmove",Q,!1),St.wrapper.removeEventListener("touchend",V,!1),window.navigator.msPointerEnabled&&(St.wrapper.removeEventListener("MSPointerDown",B,!1),St.wrapper.removeEventListener("MSPointerMove",G,!1),St.wrapper.removeEventListener("MSPointerUp",J,!1))),yt.progress&&St.progress&&St.progress.removeEventListener("click",tt,!1),yt.controls&&St.controls&&["touchstart","click"].forEach(function(e){St.controlsLeft.forEach(function(t){t.removeEventListener(e,nt,!1Line truncated