diff --git a/src/atlasViewer/atlasViewer.component.ts b/src/atlasViewer/atlasViewer.component.ts index aa551f293212fec65d29a9d6f33058165d48337d..8963c18f8b2f4dec6a0455af4a421732b06672be 100644 --- a/src/atlasViewer/atlasViewer.component.ts +++ b/src/atlasViewer/atlasViewer.component.ts @@ -495,22 +495,24 @@ export class AtlasViewer implements OnDestroy, OnInit, AfterViewInit { closeMenuWithSwipe(documentToSwipe: ElementRef) { - const swipeDistance = 150; // swipe distance - const swipeLeft$ = fromEvent(documentToSwipe.nativeElement, "touchstart") - .pipe( - switchMap(startEvent => - fromEvent(documentToSwipe.nativeElement, "touchmove") - .pipe( - takeUntil(fromEvent(documentToSwipe.nativeElement, "touchend")) - ,map(event => event['touches'][0].pageX) - ,scan((acc, pageX) => Math.round(startEvent['touches'][0].pageX - pageX), 0) - ,takeLast(1) - ,filter(difference => difference >= swipeDistance) - ))) - // Subscription - swipeLeft$.subscribe(val => { - this.changeMenuState({close: true}) - }) + if (documentToSwipe && documentToSwipe.nativeElement) { + const swipeDistance = 150; // swipe distance + const swipeLeft$ = fromEvent(documentToSwipe.nativeElement, "touchstart") + .pipe( + switchMap(startEvent => + fromEvent(documentToSwipe.nativeElement, "touchmove") + .pipe( + takeUntil(fromEvent(documentToSwipe.nativeElement, "touchend")) + , map(event => event['touches'][0].pageX) + , scan((acc, pageX) => Math.round(startEvent['touches'][0].pageX - pageX), 0) + , takeLast(1) + , filter(difference => difference >= swipeDistance) + ))) + // Subscription + swipeLeft$.subscribe(val => { + this.changeMenuState({close: true}) + }) + } } }