@@ -36,6 +36,9 @@ export { GestureState, GestureHandlerStateEvent, GestureHandlerTouchEvent, Gestu
3636let PageLayout : typeof com . nativescript . gesturehandler . PageLayout ;
3737class PageGestureExtended extends Page {
3838 nativeViewProtected : com . nativescript . gesturehandler . PageLayout ;
39+ tryCancelAllHandlers ( ) {
40+ this . nativeView ?. tryCancelAllHandlers ( ) ;
41+ }
3942 initNativeView ( ) {
4043 this . nativeViewProtected . initialize ( ) ;
4144 }
@@ -50,6 +53,9 @@ let installed = false;
5053let installedOverrides = false ;
5154
5255export class GestureRootView extends BaseGestureRootView {
56+ tryCancelAllHandlers ( ) {
57+ this . nativeView ?. tryCancelAllHandlers ( ) ;
58+ }
5359 createNativeView ( ) {
5460 if ( ! PageLayout ) {
5561 PageLayout = com . nativescript . gesturehandler . PageLayout ;
@@ -550,12 +556,10 @@ export class Manager extends ManagerBase {
550556 }
551557 return handler as any ;
552558 }
553-
554- findRegistry ( view : View ) : com . swmansion . gesturehandler . GestureHandlerRegistryImpl {
559+ findRootView ( view : View ) : PageGestureExtended | GestureRootView {
555560 if ( view instanceof GestureRootView ) {
556- return view . registry ;
561+ return view ;
557562 }
558- let registry : com . swmansion . gesturehandler . GestureHandlerRegistryImpl ;
559563 let parent = view . parent ;
560564 // first test for GestureRootView
561565 // otherwise it could fail with components like BottomSheet
@@ -564,7 +568,7 @@ export class Manager extends ManagerBase {
564568 // as the one use for touch
565569 while ( parent ) {
566570 if ( parent instanceof GestureRootView ) {
567- return parent . registry ;
571+ return parent ;
568572 }
569573 // we need to break if it is a modal page or we will get the wrong registry
570574 if ( parent [ '_dialogFragment' ] ) {
@@ -574,10 +578,10 @@ export class Manager extends ManagerBase {
574578 }
575579
576580 const page = view . page as PageGestureExtended ;
577- if ( page ) {
578- registry = page . registry ;
579- }
580- return registry ;
581+ return page ;
582+ }
583+ findRegistry ( view : View ) : com . swmansion . gesturehandler . GestureHandlerRegistryImpl {
584+ return this . findRootView ( view ) ?. registry ;
581585 }
582586 attachGestureHandlerToView < T extends com . swmansion . gesturehandler . GestureHandler < any > = com . swmansion . gesturehandler . GestureHandler < any > > ( handler : Handler < T , any > , view : View ) {
583587 const nHandler = handler . getNative ( ) ;
0 commit comments