blindfolded attempt at ie10 touch (#300)
This commit is contained in:
		
							
								
								
									
										49
									
								
								js/reveal.js
									
									
									
									
									
								
							
							
						
						
									
										49
									
								
								js/reveal.js
									
									
									
									
									
								
							| @@ -419,6 +419,13 @@ var Reveal = (function(){ | |||||||
| 			dom.wrapper.addEventListener( 'touchstart', onTouchStart, false ); | 			dom.wrapper.addEventListener( 'touchstart', onTouchStart, false ); | ||||||
| 			dom.wrapper.addEventListener( 'touchmove', onTouchMove, false ); | 			dom.wrapper.addEventListener( 'touchmove', onTouchMove, false ); | ||||||
| 			dom.wrapper.addEventListener( 'touchend', onTouchEnd, false ); | 			dom.wrapper.addEventListener( 'touchend', onTouchEnd, false ); | ||||||
|  |  | ||||||
|  | 			// Support pointer-style touch interaction as well | ||||||
|  | 			if( window.navigator.msPointerEnabled ) { | ||||||
|  | 				dom.wrapper.addEventListener( 'MSPointerDown', onPointerDown, false ); | ||||||
|  | 				dom.wrapper.addEventListener( 'MSPointerMove', onPointerMove, false ); | ||||||
|  | 				dom.wrapper.addEventListener( 'MSPointerUp', onPointerUp, false ); | ||||||
|  | 			} | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 		if( config.keyboard ) { | 		if( config.keyboard ) { | ||||||
| @@ -457,6 +464,12 @@ var Reveal = (function(){ | |||||||
| 			dom.wrapper.removeEventListener( 'touchstart', onTouchStart, false ); | 			dom.wrapper.removeEventListener( 'touchstart', onTouchStart, false ); | ||||||
| 			dom.wrapper.removeEventListener( 'touchmove', onTouchMove, false ); | 			dom.wrapper.removeEventListener( 'touchmove', onTouchMove, false ); | ||||||
| 			dom.wrapper.removeEventListener( 'touchend', onTouchEnd, false ); | 			dom.wrapper.removeEventListener( 'touchend', onTouchEnd, false ); | ||||||
|  |  | ||||||
|  | 			if( window.navigator.msPointerEnabled ) { | ||||||
|  | 				dom.wrapper.removeEventListener( 'MSPointerDown', onPointerDown, false ); | ||||||
|  | 				dom.wrapper.removeEventListener( 'MSPointerMove', onPointerMove, false ); | ||||||
|  | 				dom.wrapper.removeEventListener( 'MSPointerUp', onPointerUp, false ); | ||||||
|  | 			} | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 		if ( config.progress && dom.progress ) { | 		if ( config.progress && dom.progress ) { | ||||||
| @@ -1803,6 +1816,42 @@ var Reveal = (function(){ | |||||||
|  |  | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|  | 	/** | ||||||
|  | 	 * Convert pointer down to touch start. | ||||||
|  | 	 */ | ||||||
|  | 	function onPointerDown( event ) { | ||||||
|  |  | ||||||
|  | 		if( event.pointerType === event.MSPOINTER_TYPE_TOUCH ) { | ||||||
|  | 			event.touches = [{ clientX: event.clientX, clientY: event.clientY }]; | ||||||
|  | 			this.onTouchStart( event ); | ||||||
|  | 		} | ||||||
|  |  | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	/** | ||||||
|  | 	 * Convert pointer move to touch move. | ||||||
|  | 	 */ | ||||||
|  | 	function onPointerMove( event ) { | ||||||
|  |  | ||||||
|  | 		if( event.pointerType === event.MSPOINTER_TYPE_TOUCH ) { | ||||||
|  | 			event.touches = [{ clientX: event.clientX, clientY: event.clientY }]; | ||||||
|  | 			this.onTouchMove( event ); | ||||||
|  | 		} | ||||||
|  |  | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	/** | ||||||
|  | 	 * Convert pointer up to touch end. | ||||||
|  | 	 */ | ||||||
|  | 	function onPointerUp( event ) { | ||||||
|  |  | ||||||
|  | 		if( event.pointerType === event.MSPOINTER_TYPE_TOUCH ) { | ||||||
|  | 			event.touches = [{ clientX: event.clientX, clientY: event.clientY }]; | ||||||
|  | 			this.onTouchEnd( event ); | ||||||
|  | 		} | ||||||
|  |  | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	/** | 	/** | ||||||
| 	 * Handles mouse wheel scrolling, throttled to avoid skipping | 	 * Handles mouse wheel scrolling, throttled to avoid skipping | ||||||
| 	 * multiple slides. | 	 * multiple slides. | ||||||
|   | |||||||
							
								
								
									
										4
									
								
								js/reveal.min.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								js/reveal.min.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
		Reference in New Issue
	
	Block a user