ensure notes window fragment states are mirrored in main window #538
This commit is contained in:
		| @@ -169,7 +169,8 @@ | ||||
|  | ||||
| 					var notes = document.getElementById( 'notes' ), | ||||
| 						currentSlide = document.getElementById( 'current-slide' ), | ||||
| 						nextSlide = document.getElementById( 'next-slide' ); | ||||
| 						nextSlide = document.getElementById( 'next-slide' ), | ||||
| 						silenced = false; | ||||
|  | ||||
| 					window.addEventListener( 'message', function( event ) { | ||||
| 						var data = JSON.parse( event.data ); | ||||
| @@ -184,10 +185,14 @@ | ||||
| 							} | ||||
| 						} | ||||
|  | ||||
| 						silenced = true; | ||||
|  | ||||
| 						// Update the note slides | ||||
| 						currentSlide.contentWindow.Reveal.slide( data.indexh, data.indexv, data.indexf ); | ||||
| 						nextSlide.contentWindow.Reveal.slide( data.nextindexh, data.nextindexv ); | ||||
|  | ||||
| 						silenced = false; | ||||
|  | ||||
| 					}, false ); | ||||
|  | ||||
| 					var start = new Date(), | ||||
| @@ -218,12 +223,21 @@ | ||||
|  | ||||
| 					}, 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 | ||||
| 					currentSlide.contentWindow.Reveal.addEventListener( 'slidechanged', function( event ) { | ||||
|  | ||||
| 						window.opener.Reveal.slide( event.indexh, event.indexv ); | ||||
|  | ||||
| 					} ); | ||||
| 					currentSlide.contentWindow.Reveal.addEventListener( 'slidechanged', synchronizeMainWindow ); | ||||
| 					currentSlide.contentWindow.Reveal.addEventListener( 'fragmentshown', synchronizeMainWindow ); | ||||
| 					currentSlide.contentWindow.Reveal.addEventListener( 'fragmenthidden', synchronizeMainWindow ); | ||||
|  | ||||
| 				} | ||||
| 				else { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user