Pārlūkot izejas kodu

fix vertical swipe navigation not blocking page scrolling in embedded decks

Hakim El Hattab 1 gadu atpakaļ
vecāks
revīzija
924bdb6305

+ 6 - 1
css/reveal.scss

@@ -631,11 +631,16 @@ $controlsArrowAngleActive: 36deg;
 	touch-action: pinch-zoom;
 }
 
-// Swiping on an embedded deck should not block page scrolling
+// Swiping on an embedded deck should not block page scrolling...
 .reveal.embedded {
 	touch-action: pan-y;
 }
 
+// ... unless we're on a vertical slide
+.reveal.embedded.is-vertical-slide {
+	touch-action: none;
+}
+
 .reveal .slides {
 	position: absolute;
 	width: 100%;

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
dist/reveal.css


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
dist/reveal.esm.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
dist/reveal.esm.js.map


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
dist/reveal.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
dist/reveal.js.map


+ 2 - 0
js/controllers/touch.js

@@ -103,6 +103,8 @@ export default class Touch {
 	 */
 	onTouchStart( event ) {
 
+		this.touchCaptured = false;
+
 		if( this.isSwipePrevented( event.target ) ) return true;
 
 		this.touchStartX = event.touches[0].clientX;

+ 3 - 0
js/reveal.js

@@ -1446,6 +1446,9 @@ export default function( revealElement, options ) {
 		let currentHorizontalSlide = horizontalSlides[ indexh ],
 			currentVerticalSlides = currentHorizontalSlide.querySelectorAll( 'section' );
 
+		// Indicate when we're on a vertical slide
+		revealElement.classList.toggle( 'is-vertical-slide', currentVerticalSlides.length > 1 );
+
 		// Store references to the previous and current slides
 		currentSlide = currentVerticalSlides[ indexv ] || currentHorizontalSlide;
 

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels