ensure notes window fragment states are mirrored in main window #538

This commit is contained in:
Hakim El Hattab committed 2013-07-26 10:03:59 -04:00
1 parent 03385d7245
commit 53f1f110c8
3 files changed
+24 -9

No files matched your search

+2 -1
View File
@@ -1898,8 +1898,9 @@ var Reveal = (function(){
} }
if( !slide && currentSlide ) { if( !slide && currentSlide ) {
var hasFragments = currentSlide.querySelectorAll( '.fragment' ).length > 0;
if( hasFragments ) {
var visibleFragments = currentSlide.querySelectorAll( '.fragment.visible' ); var visibleFragments = currentSlide.querySelectorAll( '.fragment.visible' );
if( visibleFragments.length ) {
f = visibleFragments.length; f = visibleFragments.length;
} }
} }
+2 -2
View File
@@ -1,8 +1,8 @@
/*! /*!
* reveal.js 2.5.0 (2013-07-26, 09:32) * reveal.js 2.5.0 (2013-07-26, 10:01)
* 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 zt||Yt?(window.addEventListener("load",k,!1),l(Ct,e),r(),o(),void 0):(document.body.setAttribute("class","no-transforms"),void 0)}function t(){if(Ot.theme=document.querySelector("#theme"),Ot.wrapper=document.querySelector(".reveal"),Ot.slides=document.querySelector(".reveal .slides"),document.querySelector(".reveal .backgrounds")||(Ot.background=document.createElement("div"),Ot.background.classList.add("backgrounds"),Ot.wrapper.appendChild(Ot.background)),!Ot.wrapper.querySelector(".progress")){var e=document.createElement("div");e.classList.add("progress"),e.innerHTML="<span></span>",Ot.wrapper.appendChild(e)}if(!Ot.wrapper.querySelector(".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>',Ot.wrapper.appendChild(t)}if(!Ot.wrapper.querySelector(".state-background")){var n=document.createElement("div");n.classList.add("state-background"),Ot.wrapper.appendChild(n)}if(!Ot.wrapper.querySelector(".pause-overlay")){var r=document.createElement("div");r.classList.add("pause-overlay"),Ot.wrapper.appendChild(r)}Ot.progress=document.querySelector(".reveal .progress"),Ot.progressbar=document.querySelector(".reveal .progress span"),Ct.controls&&(Ot.controls=document.querySelector(".reveal .controls"),Ot.controlsLeft=d(document.querySelectorAll(".navigate-left")),Ot.controlsRight=d(document.querySelectorAll(".navigate-right")),Ot.controlsUp=d(document.querySelectorAll(".navigate-up")),Ot.controlsDown=d(document.querySelectorAll(".navigate-down")),Ot.controlsPrev=d(document.querySelectorAll(".navigate-prev")),Ot.controlsNext=d(document.querySelectorAll(".navigate-next")))}function n(){function e(e,t){var n={background:e.getAttribute("data-background"),backgroundSize:e.getAttribute("data-background-size"),backgroundImage:e.getAttribute("data-background-image"),backgroundColor:e.getAttribute("data-background-color"),backgroundRepeat:e.getAttribute("data-background-repeat"),backgroundPosition:e.getAttribute("data-background-position"),backgroundTransition:e.getAttribute("data-background-transition")},r=document.createElement("div");return r.className="slide-background",n.background&&(/^(http|file|\/\/)/gi.test(n.background)||/\.(png|jpg|jpeg|gif|bmp)$/gi.test(n.background)?r.style.backgroundImage="url("+n.background+")":r.style.background=n.background),n.backgroundSize&&(r.style.backgroundSize=n.backgroundSize),n.backgroundImage&&(r.style.backgroundImage='url("'+n.backgroundImage+'")'),n.backgroundColor&&(r.style.backgroundColor=n.backgroundColor),n.backgroundRepeat&&(r.style.backgroundRepeat=n.backgroundRepeat),n.backgroundPosition&&(r.style.backgroundPosition=n.backgroundPosition),n.backgroundTransition&&r.setAttribute("data-background-transition",n.backgroundTransition),t.appendChild(r),r}v()&&document.body.classList.add("print-pdf"),Ot.background.innerHTML="",Ot.background.classList.add("no-transition"),d(document.querySelectorAll(Mt)).forEach(function(t){var n;n=v()?e(t,t):e(t,Ot.background),d(t.querySelectorAll("section")).forEach(function(t){v()?e(t,t):e(t,n)})})}function r(){/iphone|ipod|android/gi.test(navigator.userAgent)&&!/crios/gi.test(navigator.userAgent)&&(window.addEventListener("load",p,!1),window.addEventListener("orientationchange",p,!1))}function o(){function e(){n.length&&head.js.apply(null,n),a()}for(var t=[],n=[],r=0,o=Ct.dependencies.length;o>r;r++){var i=Ct.dependencies[r];(!i.condition||i.condition())&&(i.async?n.push(i.src):t.push(i.src),"function"==typeof i.callback&&head.ready(i.src.match(/([\w\d_\-]*)\.?js$|[^\\\/]*$/i)[0],i.callback))}t.length?(head.ready(e),head.js.apply(null,t)):e()}function a(){t(),i(),K(),setTimeout(function(){m("ready",{indexh:St,indexv:At,currentSlide:xt})},1)}function i(e){if(Ot.wrapper.classList.remove(Ct.transition),"object"==typeof e&&l(Ct,e),Yt===!1&&(Ct.transition="linear"),Ot.wrapper.classList.add(Ct.transition),Ot.wrapper.setAttribute("data-transition-speed",Ct.transitionSpeed),Ot.wrapper.setAttribute("data-background-transition",Ct.backgroundTransition),Ot.controls&&(Ot.controls.style.display=Ct.controls&&Ot.controls?"block":"none"),Ot.progress&&(Ot.progress.style.display=Ct.progress&&Ot.progress?"block":"none"),Ct.rtl?Ot.wrapper.classList.add("rtl"):Ot.wrapper.classList.remove("rtl"),Ct.center?Ot.wrapper.classList.add("center"):Ot.wrapper.classList.remove("center"),Ct.mouseWheel?(document.addEventListener("DOMMouseScroll",ft,!1),document.addEventListener("mousewheel",ft,!1)):(document.removeEventListener("DOMMouseScroll",ft,!1),document.removeEventListener("mousewheel",ft,!1)),Ct.rollingLinks?g():h(),Ct.previewLinks?y():(b(),y("[data-preview-link]")),Ct.theme&&Ot.theme){var t=Ot.theme.getAttribute("href"),n=/[^\/]*?(?=\.css)/,r=t.match(n)[0];Ct.theme!==r&&(t=t.replace(n,Ct.theme),Ot.theme.setAttribute("href",t))}Y()}function s(){Ft=!0,Line truncated var Reveal=function(){"use strict";function e(e){return zt||Yt?(window.addEventListener("load",k,!1),l(Ct,e),r(),o(),void 0):(document.body.setAttribute("class","no-transforms"),void 0)}function t(){if(Ot.theme=document.querySelector("#theme"),Ot.wrapper=document.querySelector(".reveal"),Ot.slides=document.querySelector(".reveal .slides"),document.querySelector(".reveal .backgrounds")||(Ot.background=document.createElement("div"),Ot.background.classList.add("backgrounds"),Ot.wrapper.appendChild(Ot.background)),!Ot.wrapper.querySelector(".progress")){var e=document.createElement("div");e.classList.add("progress"),e.innerHTML="<span></span>",Ot.wrapper.appendChild(e)}if(!Ot.wrapper.querySelector(".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>',Ot.wrapper.appendChild(t)}if(!Ot.wrapper.querySelector(".state-background")){var n=document.createElement("div");n.classList.add("state-background"),Ot.wrapper.appendChild(n)}if(!Ot.wrapper.querySelector(".pause-overlay")){var r=document.createElement("div");r.classList.add("pause-overlay"),Ot.wrapper.appendChild(r)}Ot.progress=document.querySelector(".reveal .progress"),Ot.progressbar=document.querySelector(".reveal .progress span"),Ct.controls&&(Ot.controls=document.querySelector(".reveal .controls"),Ot.controlsLeft=d(document.querySelectorAll(".navigate-left")),Ot.controlsRight=d(document.querySelectorAll(".navigate-right")),Ot.controlsUp=d(document.querySelectorAll(".navigate-up")),Ot.controlsDown=d(document.querySelectorAll(".navigate-down")),Ot.controlsPrev=d(document.querySelectorAll(".navigate-prev")),Ot.controlsNext=d(document.querySelectorAll(".navigate-next")))}function n(){function e(e,t){var n={background:e.getAttribute("data-background"),backgroundSize:e.getAttribute("data-background-size"),backgroundImage:e.getAttribute("data-background-image"),backgroundColor:e.getAttribute("data-background-color"),backgroundRepeat:e.getAttribute("data-background-repeat"),backgroundPosition:e.getAttribute("data-background-position"),backgroundTransition:e.getAttribute("data-background-transition")},r=document.createElement("div");return r.className="slide-background",n.background&&(/^(http|file|\/\/)/gi.test(n.background)||/\.(png|jpg|jpeg|gif|bmp)$/gi.test(n.background)?r.style.backgroundImage="url("+n.background+")":r.style.background=n.background),n.backgroundSize&&(r.style.backgroundSize=n.backgroundSize),n.backgroundImage&&(r.style.backgroundImage='url("'+n.backgroundImage+'")'),n.backgroundColor&&(r.style.backgroundColor=n.backgroundColor),n.backgroundRepeat&&(r.style.backgroundRepeat=n.backgroundRepeat),n.backgroundPosition&&(r.style.backgroundPosition=n.backgroundPosition),n.backgroundTransition&&r.setAttribute("data-background-transition",n.backgroundTransition),t.appendChild(r),r}v()&&document.body.classList.add("print-pdf"),Ot.background.innerHTML="",Ot.background.classList.add("no-transition"),d(document.querySelectorAll(Mt)).forEach(function(t){var n;n=v()?e(t,t):e(t,Ot.background),d(t.querySelectorAll("section")).forEach(function(t){v()?e(t,t):e(t,n)})})}function r(){/iphone|ipod|android/gi.test(navigator.userAgent)&&!/crios/gi.test(navigator.userAgent)&&(window.addEventListener("load",p,!1),window.addEventListener("orientationchange",p,!1))}function o(){function e(){n.length&&head.js.apply(null,n),a()}for(var t=[],n=[],r=0,o=Ct.dependencies.length;o>r;r++){var i=Ct.dependencies[r];(!i.condition||i.condition())&&(i.async?n.push(i.src):t.push(i.src),"function"==typeof i.callback&&head.ready(i.src.match(/([\w\d_\-]*)\.?js$|[^\\\/]*$/i)[0],i.callback))}t.length?(head.ready(e),head.js.apply(null,t)):e()}function a(){t(),i(),K(),setTimeout(function(){m("ready",{indexh:St,indexv:At,currentSlide:xt})},1)}function i(e){if(Ot.wrapper.classList.remove(Ct.transition),"object"==typeof e&&l(Ct,e),Yt===!1&&(Ct.transition="linear"),Ot.wrapper.classList.add(Ct.transition),Ot.wrapper.setAttribute("data-transition-speed",Ct.transitionSpeed),Ot.wrapper.setAttribute("data-background-transition",Ct.backgroundTransition),Ot.controls&&(Ot.controls.style.display=Ct.controls&&Ot.controls?"block":"none"),Ot.progress&&(Ot.progress.style.display=Ct.progress&&Ot.progress?"block":"none"),Ct.rtl?Ot.wrapper.classList.add("rtl"):Ot.wrapper.classList.remove("rtl"),Ct.center?Ot.wrapper.classList.add("center"):Ot.wrapper.classList.remove("center"),Ct.mouseWheel?(document.addEventListener("DOMMouseScroll",ft,!1),document.addEventListener("mousewheel",ft,!1)):(document.removeEventListener("DOMMouseScroll",ft,!1),document.removeEventListener("mousewheel",ft,!1)),Ct.rollingLinks?g():h(),Ct.previewLinks?y():(b(),y("[data-preview-link]")),Ct.theme&&Ot.theme){var t=Ot.theme.getAttribute("href"),n=/[^\/]*?(?=\.css)/,r=t.match(n)[0];Ct.theme!==r&&(t=t.replace(n,Ct.theme),Ot.theme.setAttribute("href",t))}Y()}function s(){Ft=!0,Line truncated
+20 -6
View File
@@ -169,7 +169,8 @@
var notes = document.getElementById( 'notes' ), var notes = document.getElementById( 'notes' ),
currentSlide = document.getElementById( 'current-slide' ), currentSlide = document.getElementById( 'current-slide' ),
nextSlide = document.getElementById( 'next-slide' ); nextSlide = document.getElementById( 'next-slide' ),
silenced = false;
window.addEventListener( 'message', function( event ) { window.addEventListener( 'message', function( event ) {
var data = JSON.parse( event.data ); var data = JSON.parse( event.data );
@@ -184,10 +185,14 @@
} }
} }
silenced = true;
// Update the note slides // Update the note slides
currentSlide.contentWindow.Reveal.slide( data.indexh, data.indexv, data.indexf ); currentSlide.contentWindow.Reveal.slide( data.indexh, data.indexv, data.indexf );
nextSlide.contentWindow.Reveal.slide( data.nextindexh, data.nextindexv ); nextSlide.contentWindow.Reveal.slide( data.nextindexh, data.nextindexv );
silenced = false;
}, false ); }, false );
var start = new Date(), var start = new Date(),
@@ -218,12 +223,21 @@
}, 1000 ); }, 1000 );
// Broadcasts the state of the notes window to synchronize
// the main window
function synchronizeMainWindow() {
if( !silenced ) {
var indices = currentSlide.contentWindow.Reveal.getIndices();
window.opener.Reveal.slide( indices.h, indices.v, indices.f );
}
}
// Navigate the main window when the notes slide changes // Navigate the main window when the notes slide changes
currentSlide.contentWindow.Reveal.addEventListener( 'slidechanged', function( event ) { currentSlide.contentWindow.Reveal.addEventListener( 'slidechanged', synchronizeMainWindow );
currentSlide.contentWindow.Reveal.addEventListener( 'fragmentshown', synchronizeMainWindow );
window.opener.Reveal.slide( event.indexh, event.indexv ); currentSlide.contentWindow.Reveal.addEventListener( 'fragmenthidden', synchronizeMainWindow );
} );
} }
else { else {