@nativescript-community/gesturehandler 0.2.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.classpath +12 -0
- package/.eslintrc.js +3 -0
- package/.gitattributes +17 -0
- package/.github/FUNDING.yml +1 -0
- package/.github/issue_template.md +28 -0
- package/.gitmodules +6 -0
- package/.gradle/7.3/checksums/checksums.lock +0 -0
- package/.gradle/7.3/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/.gradle/7.3/dependencies-accessors/gc.properties +0 -0
- package/.gradle/7.3/fileChanges/last-build.bin +0 -0
- package/.gradle/7.3/fileHashes/fileHashes.lock +0 -0
- package/.gradle/7.3/gc.properties +0 -0
- package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/.gradle/buildOutputCleanup/cache.properties +2 -0
- package/.gradle/checksums/checksums.lock +0 -0
- package/.gradle/checksums/md5-checksums.bin +0 -0
- package/.gradle/checksums/sha1-checksums.bin +0 -0
- package/.gradle/vcs-1/gc.properties +0 -0
- package/.history/build_20201106173734.gradle +22 -0
- package/.history/build_20220218093019.gradle +22 -0
- package/.history/build_20220218093024.gradle +22 -0
- package/.history/build_20220218093151.gradle +22 -0
- package/.history/build_20220218093200.gradle +22 -0
- package/.history/build_20220218093224.gradle +22 -0
- package/.history/build_20220218093249.gradle +22 -0
- package/.history/build_20220218093334.gradle +22 -0
- package/.history/build_20220218093339.gradle +22 -0
- package/.history/build_20220218093341.gradle +22 -0
- package/.history/build_20220218093411.gradle +22 -0
- package/.history/build_20220218093413.gradle +22 -0
- package/.history/build_20220218093416.gradle +22 -0
- package/.history/build_20220218093421.gradle +23 -0
- package/.history/build_20220218093423.gradle +22 -0
- package/.history/build_20220218100008.gradle +22 -0
- package/.history/demo-snippets/package_20211119094134.json +7 -0
- package/.history/demo-snippets/package_20220328153105.json +7 -0
- package/.history/demo-snippets/package_20220328153251.json +7 -0
- package/.history/demo-snippets/package_20220328153410.json +7 -0
- package/.history/demo-snippets/vue/Basic_20210917174642.vue +46 -0
- package/.history/demo-snippets/vue/Basic_20220328154031.vue +44 -0
- package/.history/demo-snippets/vue/Basic_20220328154730.vue +46 -0
- package/.history/demo-snippets/vue/Basic_20220328154741.vue +46 -0
- package/.history/demo-snippets/vue/Basic_20220328154807.vue +47 -0
- package/.history/demo-snippets/vue/Basic_20220328154838.vue +51 -0
- package/.history/demo-snippets/vue/Basic_20220328154839.vue +51 -0
- package/.history/demo-snippets/vue/Basic_20220328154901.vue +52 -0
- package/.history/demo-snippets/vue/Basic_20220328154925.vue +52 -0
- package/.history/demo-snippets/vue/Basic_20220328162644.vue +52 -0
- package/.history/demo-snippets/vue/Basic_20220328162656.vue +48 -0
- package/.history/demo-snippets/vue/Basic_20220328162658.vue +48 -0
- package/.history/demo-snippets/vue/Basic_20220328162731.vue +48 -0
- package/.history/demo-snippets/vue/ModalView_20220328154527.vue +0 -0
- package/.history/demo-snippets/vue/ModalView_20220328154555.vue +15 -0
- package/.history/demo-snippets/vue/ModalView_20220328162755.vue +15 -0
- package/.history/demo-snippets/vue/ModalView_20220328162915.vue +17 -0
- package/.history/demo-snippets/vue/install_20211117134051.ts +14 -0
- package/.history/demo-snippets/vue/install_20220328153411.ts +10 -0
- package/.history/demo-snippets/vue/install_20220328154031.ts +9 -0
- package/.history/demo-snippets/vue/install_20220328162915.ts +10 -0
- package/.history/demo-vue/.npmrc_20220328151942 +1 -0
- package/.history/demo-vue/.npmrc_20220329084955 +2 -0
- package/.history/demo-vue/package_20220328151942.json +60 -0
- package/.history/demo-vue/package_20220328153206.json +60 -0
- package/.history/demo-vue/package_20220328153218.json +59 -0
- package/.history/demo-vue/package_20220328153326.json +60 -0
- package/.history/demo-vue/package_20220328153411.json +60 -0
- package/.history/demo_vue/app/App_20201115162303.vue +118 -0
- package/.history/demo_vue/app/App_20220328150238.vue +118 -0
- package/.history/demo_vue/app/App_20220328150240.vue +116 -0
- package/.history/demo_vue/app/App_20220328150241.vue +115 -0
- package/.history/demo_vue/package_20210511163846.json +30 -0
- package/.history/demo_vue/package_20220328145031.json +30 -0
- package/.history/demo_vue/package_20220328150155.json +30 -0
- package/.history/demo_vue/package_20220328151156.json +29 -0
- package/.history/demo_vue/tsconfig_20200909142713.json +30 -0
- package/.history/demo_vue/tsconfig_20220328151126.json +28 -0
- package/.history/demo_vue/tsconfig_20220328151129.json +27 -0
- package/.history/demo_vue/webpack.config_20200909141619.js +370 -0
- package/.history/demo_vue/webpack.config_20220328145113.js +6 -0
- package/.history/demo_vue/webpack.config_20220328145115.js +5 -0
- package/.history/lerna_20220104212014.json +21 -0
- package/.history/lerna_20220328152313.json +21 -0
- package/.history/package_20220311095923.json +74 -0
- package/.history/package_20220328152312.json +74 -0
- package/.history/packages/gesturehandler/blueprint_20220306151807.md +221 -0
- package/{blueprint.md → .history/packages/gesturehandler/blueprint_20220328164413.md} +0 -0
- package/.history/packages/gesturehandler/package_20220325110528.json +39 -0
- package/.history/packages/gesturehandler/package_20220328152653.json +52 -0
- package/.history/packages/gesturehandler/package_20220328152719.json +52 -0
- package/.history/packages/gesturehandler/package_20220328153446.json +52 -0
- package/.history/packages/gesturehandler/package_20220328164418.json +52 -0
- package/.history/packages/gesturehandler/package_20220328164722.json +52 -0
- package/{platforms/android/java/com/swmansion/gesturehandler/GestureHandler.java → .history/packages/gesturehandler/platforms/android/java/com/swmansion/gesturehandler/GestureHandler_20210517182228.java} +0 -0
- package/.history/packages/gesturehandler/platforms/android/java/com/swmansion/gesturehandler/GestureHandler_20220331104607.java +540 -0
- package/{platforms/android/java/com/swmansion/gesturehandler/LongPressGestureHandler.java → .history/packages/gesturehandler/platforms/android/java/com/swmansion/gesturehandler/LongPressGestureHandler_20210512101356.java} +0 -0
- package/.history/packages/gesturehandler/platforms/android/java/com/swmansion/gesturehandler/LongPressGestureHandler_20220331111050.java +81 -0
- package/.history/packages/gesturehandler/tsconfig_20220328152950.json +13 -0
- package/.history/packages/gesturehandler/tsconfig_20220328153011.json +13 -0
- package/.history/plugin/platforms/android/include_20220125161223.gradle +10 -0
- package/.history/plugin/platforms/android/include_20220217110818.gradle +19 -0
- package/.history/plugin/platforms/android/include_20220217112410.gradle +18 -0
- package/{platforms/android/include.gradle → .history/plugin/platforms/android/include_20220217153211.gradle} +0 -0
- package/.history/plugin/platforms/android/include_20220218092908.gradle +19 -0
- package/{platforms/android/java/com/nativescript/gesturehandler/PageLayout.java → .history/plugin/platforms/android/java/com/nativescript/gesturehandler/GestureLayout_20220217101202.java} +0 -0
- package/.history/plugin/platforms/android/java/com/nativescript/gesturehandler/GestureLayout_20220217101931.java +185 -0
- package/.history/plugin/platforms/ios/src/GestureHandler_20201106183454.h +98 -0
- package/.history/plugin/platforms/ios/src/GestureHandler_20201111112216.m +365 -0
- package/.history/plugin/platforms/ios/src/GestureHandler_20220104160100.m +369 -0
- package/{platforms/ios/src/GestureHandler.h → .history/plugin/platforms/ios/src/GestureHandler_20220104172158.h} +0 -0
- package/.history/src/gesturehandler/gesturehandler.android_20220328144612.ts +610 -0
- package/.history/src/gesturehandler/gesturehandler.android_20220328154126.ts +609 -0
- package/.history/src/gesturehandler/gesturehandler.android_20220328154143.ts +609 -0
- package/.history/src/gesturehandler/gesturehandler.android_20220328154730.ts +610 -0
- package/.history/src/gesturehandler/gesturehandler.android_20220328160735.ts +610 -0
- package/.history/src/gesturehandler/gesturehandler.android_20220328161307.ts +612 -0
- package/.history/src/gesturehandler/gesturehandler.android_20220328161410.ts +613 -0
- package/.history/src/gesturehandler/gesturehandler.android_20220328161742.ts +612 -0
- package/.history/src/gesturehandler/gesturehandler.android_20220328162317.ts +613 -0
- package/.history/src/gesturehandler/gesturehandler.android_20220328162541.ts +613 -0
- package/.history/src/gesturehandler/gesturehandler.android_20220328162915.ts +611 -0
- package/{gesturehandler.android.js → .history/src/gesturehandler/gesturehandler.android_20220328163618.ts} +228 -208
- package/.history/src/gesturehandler/gesturehandler.android_20220328163707.ts +610 -0
- package/.history/src/gesturehandler/gesturehandler.common_20220328144620.ts +325 -0
- package/.history/src/gesturehandler/gesturehandler.common_20220328153656.ts +325 -0
- package/.history/src/gesturehandler/gestures_override_20210512114352.ts +523 -0
- package/.history/src/gesturehandler/gestures_override_20220328155041.ts +523 -0
- package/.history/src/gesturehandler/gestures_override_20220328155424.ts +525 -0
- package/.history/src/gesturehandler/gestures_override_20220328160121.ts +527 -0
- package/.history/src/gesturehandler/gestures_override_20220328160132.ts +527 -0
- package/.history/src/gesturehandler/gestures_override_20220328160220.ts +528 -0
- package/.history/src/gesturehandler/gestures_override_20220328160416.ts +529 -0
- package/.history/src/gesturehandler/gestures_override_20220328160731.ts +535 -0
- package/.history/src/gesturehandler/gestures_override_20220328160808.ts +536 -0
- package/.history/src/gesturehandler/gestures_override_20220328160834.ts +536 -0
- package/.history/src/gesturehandler/gestures_override_20220328160909.ts +536 -0
- package/.history/src/gesturehandler/gestures_override_20220328160931.ts +536 -0
- package/.history/src/gesturehandler/gestures_override_20220328161052.ts +536 -0
- package/.history/src/gesturehandler/gestures_override_20220328161319.ts +536 -0
- package/.history/src/gesturehandler/gestures_override_20220328161759.ts +534 -0
- package/.history/src/gesturehandler/gestures_override_20220328162317.ts +535 -0
- package/.history/src/gesturehandler/gestures_override_20220328162503.ts +535 -0
- package/{gestures_override.js → .history/src/gesturehandler/gestures_override_20220328170816.ts} +171 -64
- package/.history/src/gesturehandler/gestures_override_20220328170818.ts +532 -0
- package/.history/src/gesturehandler/vue/index_20201021164506.ts +12 -0
- package/{vue/index.js → .history/src/gesturehandler/vue/index_20220328163021.ts} +1 -1
- package/.history/src/gesturehandler.android_20220325103749.ts +574 -0
- package/.history/src/gesturehandler.android_20220325110406.ts +574 -0
- package/.history/src/gesturehandler.android_20220328144613.ts +610 -0
- package/{gesturehandler.common.js → .history/src/gesturehandler.common_20210512114125.ts} +161 -74
- package/.history/src/gesturehandler.common_20220328144621.ts +325 -0
- package/.history/src/gesturehandler.d_20210422150412.ts +154 -0
- package/{gesturehandler.d.ts → .history/src/gesturehandler.d_20220328144718.ts} +0 -0
- package/{gesturehandler.ios.js → .history/src/gesturehandler.ios_20210422150701.ts} +100 -71
- package/.history/src/gesturehandler.ios_20220328144653.ts +296 -0
- package/.history/src/references.d_20200412093513.ts +3 -0
- package/.history/src/references.d_20220328144701.ts +3 -0
- package/.history/tsconfig_20220306153539.json +9 -0
- package/.history/tsconfig_20220328152313.json +9 -0
- package/.prettierignore +4 -0
- package/.prettierrc +6 -0
- package/.prettierrc.js +7 -0
- package/.settings/org.eclipse.buildship.core.prefs +13 -0
- package/.vscode/settings.json +19 -0
- package/CHANGELOG.md +157 -54
- package/CONTRIBUTING.md +19 -0
- package/README.md +12 -132
- package/build.gradle +22 -0
- package/config.json +7 -0
- package/demo-snippets/node_modules/.package-lock.json +20 -0
- package/demo-snippets/package.json +7 -0
- package/demo-snippets/vue/Basic.vue +48 -0
- package/demo-snippets/vue/ModalView.vue +17 -0
- package/demo-snippets/vue/install.ts +10 -0
- package/demo-vue/App_Resources/Android/app.gradle +20 -0
- package/demo-vue/App_Resources/Android/src/main/AndroidManifest.xml +42 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable/ic_launcher_foreground.xml +15 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-hdpi/background.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-hdpi/logo.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-ldpi/background.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-ldpi/logo.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-mdpi/background.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-mdpi/logo.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-nodpi/splash_screen.xml +8 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-xhdpi/background.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-xhdpi/logo.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-xxhdpi/background.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-xxhdpi/logo.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-xxxhdpi/background.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/drawable-xxxhdpi/logo.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +5 -0
- package/demo-vue/App_Resources/Android/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
- package/demo-vue/App_Resources/Android/src/main/res/values/colors.xml +7 -0
- package/demo-vue/App_Resources/Android/src/main/res/values/ic_launcher_background.xml +4 -0
- package/demo-vue/App_Resources/Android/src/main/res/values/styles.xml +42 -0
- package/demo-vue/App_Resources/Android/src/main/res/values-v21/colors.xml +4 -0
- package/demo-vue/App_Resources/Android/src/main/res/values-v21/styles.xml +28 -0
- package/demo-vue/App_Resources/Android/src/main/res/values-v29/styles.xml +12 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/Contents.json +122 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-1024.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-20.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-20@2x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-20@3x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-29.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-40.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-76.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/Contents.json +6 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/LaunchScreen.AspectFill.imageset/Contents.json +23 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/LaunchScreen.AspectFill.imageset/LaunchScreen-AspectFill.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/LaunchScreen.AspectFill.imageset/LaunchScreen-AspectFill@2x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/LaunchScreen.AspectFill.imageset/LaunchScreen-AspectFill@3x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/LaunchScreen.Center.imageset/Contents.json +23 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/LaunchScreen.Center.imageset/LaunchScreen-Center.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/LaunchScreen.Center.imageset/LaunchScreen-Center@2x.png +0 -0
- package/demo-vue/App_Resources/iOS/Assets.xcassets/LaunchScreen.Center.imageset/LaunchScreen-Center@3x.png +0 -0
- package/demo-vue/App_Resources/iOS/Info.plist +47 -0
- package/demo-vue/App_Resources/iOS/LaunchScreen.storyboard +53 -0
- package/demo-vue/App_Resources/iOS/build.xcconfig +6 -0
- package/demo-vue/app/app.scss +11 -0
- package/demo-vue/app/app.ts +9 -0
- package/demo-vue/app/components/Menu.vue +54 -0
- package/demo-vue/nativescript.config.ts +11 -0
- package/demo-vue/package.json +60 -0
- package/demo-vue/tsconfig.json +25 -0
- package/demo-vue/types/references.d.ts +1 -0
- package/demo-vue/types/shims.vue.d.ts +4 -0
- package/demo-vue/webpack.config.js +42 -0
- package/images/demo.gif +0 -0
- package/lerna.json +21 -0
- package/package.json +60 -51
- package/packages/gesturehandler/CHANGELOG.md +609 -0
- package/packages/gesturehandler/README.md +176 -0
- package/packages/gesturehandler/blueprint.md +74 -0
- package/packages/gesturehandler/package.json +52 -0
- package/{platforms → packages/gesturehandler/platforms}/android/AndroidManifest.xml +0 -0
- package/packages/gesturehandler/platforms/android/include.gradle +19 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/nativescript/gesturehandler/GestureHandlerInteractionController.java +0 -0
- package/packages/gesturehandler/platforms/android/java/com/nativescript/gesturehandler/PageLayout.java +189 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/nativescript/gesturehandler/RootViewGestureHandler.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/BaseGestureHandlerInteractionController.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/FlingGestureHandler.java +0 -0
- package/packages/gesturehandler/platforms/android/java/com/swmansion/gesturehandler/GestureHandler.java +540 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/GestureHandlerInteractionController.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/GestureHandlerOrchestrator.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/GestureHandlerRegistry.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/GestureHandlerRegistryImpl.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/GestureUtils.java +0 -0
- package/packages/gesturehandler/platforms/android/java/com/swmansion/gesturehandler/LongPressGestureHandler.java +81 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/NativeViewGestureHandler.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/OnTouchEventListener.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/PanGestureHandler.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/PinchGestureHandler.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/PointerEvents.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/PointerEventsConfig.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/PointerEventsSpec.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/RotationGestureDetector.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/RotationGestureHandler.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/ScaleGestureDetector.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/TapGestureHandler.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/java/com/swmansion/gesturehandler/ViewConfigurationHelper.java +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/native-api-usage.json +0 -0
- package/{platforms → packages/gesturehandler/platforms}/android/res/values/config.xml +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/FlingHandler.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/FlingHandler.m +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/ForceTouchHandler.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/ForceTouchHandler.m +0 -0
- package/packages/gesturehandler/platforms/ios/src/GestureHandler.h +101 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/GestureHandler.m +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/GestureHandlerDirection.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/GestureHandlerEvents.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/GestureHandlerEvents.m +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/GestureHandlerHeader.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/GestureHandlerManager.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/GestureHandlerManager.m +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/GestureHandlerRegistry.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/GestureHandlerRegistry.m +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/GestureHandlerState.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/LongPressHandler.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/LongPressHandler.m +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/NativeViewHandler.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/NativeViewHandler.m +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/PanHandler.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/PanHandler.m +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/PinchHandler.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/PinchHandler.m +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/RootViewGestureRecognizer.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/RootViewGestureRecognizer.m +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/RotationHandler.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/RotationHandler.m +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/TapHandler.h +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/TapHandler.m +0 -0
- package/{platforms → packages/gesturehandler/platforms}/ios/src/module.modulemap +0 -0
- package/packages/gesturehandler/tsconfig.json +13 -0
- package/references.d.ts +3 -3
- package/src/gesturehandler/gesturehandler.android.ts +610 -0
- package/src/gesturehandler/gesturehandler.common.ts +325 -0
- package/src/gesturehandler/gesturehandler.d.ts +156 -0
- package/src/gesturehandler/gesturehandler.ios.ts +296 -0
- package/src/gesturehandler/gestures_override.ts +532 -0
- package/src/gesturehandler/references.d.ts +3 -0
- package/{typings → src/gesturehandler/typings}/android.d.ts +0 -0
- package/{typings → src/gesturehandler/typings}/extensions.android.d.ts +0 -0
- package/{typings → src/gesturehandler/typings}/ios.d.ts +0 -0
- package/src/gesturehandler/vue/index.ts +7 -0
- package/src-native/.vscode/settings.json +3 -0
- package/src-native/android/.settings/org.eclipse.buildship.core.prefs +13 -0
- package/src-native/android/.vscode/settings.json +3 -0
- package/src-native/android/README.md +14 -0
- package/src-native/android/build.gradle +25 -0
- package/src-native/android/build.sh +36 -0
- package/src-native/android/gesturehandler/.classpath +6 -0
- package/src-native/android/gesturehandler/.settings/org.eclipse.buildship.core.prefs +2 -0
- package/src-native/android/gesturehandler/build.gradle +84 -0
- package/src-native/android/gesturehandler/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/src-native/android/gesturehandler/gradle/wrapper/gradle-wrapper.properties +6 -0
- package/src-native/android/gesturehandler/gradlew +160 -0
- package/src-native/android/gesturehandler/gradlew.bat +90 -0
- package/src-native/android/gesturehandler/local.properties +9 -0
- package/src-native/android/gesturehandler/proguard-rules.pro +17 -0
- package/src-native/android/gesturehandler/src/main/AndroidManifest.xml +9 -0
- package/src-native/android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/src-native/android/gradle/wrapper/gradle-wrapper.properties +6 -0
- package/src-native/android/gradle.properties +23 -0
- package/src-native/android/gradlew +160 -0
- package/src-native/android/gradlew.bat +90 -0
- package/src-native/android/settings.gradle +1 -0
- package/src-native/ios/GestureHandler.xcodeproj/project.pbxproj +662 -0
- package/src-native/ios/GestureHandler.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
- package/src-native/ios/GestureHandler.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/src-native/ios/GestureHandler.xcodeproj/xcshareddata/xcschemes/GestureHandler.xcscheme +76 -0
- package/src-native/ios/GestureHandler.xcodeproj/xcshareddata/xcschemes/GestureHandlerApp.xcscheme +87 -0
- package/src-native/ios/GestureHandler.xcodeproj/xcshareddata/xcschemes/GestureHandlerLib.xcscheme +76 -0
- package/src-native/ios/GestureHandler.xcodeproj/xcshareddata/xcschemes/test.xcscheme +76 -0
- package/src-native/ios/GestureHandler.xcodeproj/xcshareddata/xcschemes/universal.xcscheme +76 -0
- package/src-native/ios/build.sh +10 -0
- package/tools/.eslintrc.js +252 -0
- package/tools/builddoc.mjs +54 -0
- package/tools/common/.eslintrc.js +3 -0
- package/tools/common/.prettierignore +4 -0
- package/tools/common/.prettierrc.js +7 -0
- package/tools/common/references.d.ts +3 -0
- package/tools/package.json +116 -0
- package/tools/readme/blueprint.json +10 -0
- package/tools/readme/demos-and-development.md +35 -0
- package/tools/readme/edit-warning.md +20 -0
- package/tools/readme/questions.md +3 -0
- package/tools/readme.js +54 -0
- package/tools/sync.js +102 -0
- package/tools/tsconfig.doc.json +10 -0
- package/tools/tsconfig.eslint.json +4 -0
- package/tools/tsconfig.json +38 -0
- package/tools/typedoc.js +17 -0
- package/tools/update.js +32 -0
- package/tsconfig.json +4 -8
- package/.pnpm-debug.log +0 -1
- package/gesturehandler.android.d.ts +0 -180
- package/gesturehandler.android.js.map +0 -1
- package/gesturehandler.common.d.ts +0 -96
- package/gesturehandler.common.js.map +0 -1
- package/gesturehandler.ios.d.ts +0 -56
- package/gesturehandler.ios.js.map +0 -1
- package/gestures_override.d.ts +0 -29
- package/gestures_override.js.map +0 -1
- package/react/index.d.ts +0 -20
- package/react/index.js +0 -9
- package/react/index.js.map +0 -1
- package/svelte/index.d.ts +0 -11
- package/svelte/index.js +0 -26
- package/svelte/index.js.map +0 -1
- package/vue/index.d.ts +0 -4
- package/vue/index.js.map +0 -1
@@ -0,0 +1,535 @@
|
|
1
|
+
import { EventData, View } from '@nativescript/core';
|
2
|
+
import { GestureEventData, GestureStateTypes, GestureTypes, GesturesObserver as NGesturesObserver, SwipeDirection, TouchAction, toString as gestureToString } from '@nativescript/core/ui/gestures';
|
3
|
+
import { layout } from '@nativescript/core/utils/utils';
|
4
|
+
import { Handler, Manager } from './gesturehandler';
|
5
|
+
import { GestureHandlerStateEvent, GestureHandlerTouchEvent, GestureState, GestureStateEventData, HandlerType, ROOT_GESTURE_HANDLER_TAG } from './gesturehandler.common';
|
6
|
+
|
7
|
+
export function observe(target: View, type: GestureTypes, callback: (args: GestureEventData) => void, context?: any): GesturesObserver {
|
8
|
+
const observer = new GesturesObserver(target, callback, context);
|
9
|
+
observer.observe(type);
|
10
|
+
return observer;
|
11
|
+
}
|
12
|
+
|
13
|
+
let TAG = 0;
|
14
|
+
export class GesturesObserver {
|
15
|
+
private _callback: (args: GestureEventData) => void;
|
16
|
+
private _target: View & {
|
17
|
+
_gestureHandlers?: any;
|
18
|
+
};
|
19
|
+
private _context: any;
|
20
|
+
|
21
|
+
public type: GestureTypes;
|
22
|
+
|
23
|
+
private nObserver?: NGesturesObserver;
|
24
|
+
|
25
|
+
//@ts-ignore
|
26
|
+
public get callback(): (args: GestureEventData) => void {
|
27
|
+
return this._callback;
|
28
|
+
}
|
29
|
+
|
30
|
+
public get target() {
|
31
|
+
return this._target;
|
32
|
+
}
|
33
|
+
|
34
|
+
//@ts-ignore
|
35
|
+
public get context() {
|
36
|
+
return this._context;
|
37
|
+
}
|
38
|
+
|
39
|
+
constructor(target: View, callback: (args: GestureEventData) => void, context: any) {
|
40
|
+
this._target = target;
|
41
|
+
if (!target['TAP_HANDLER_TAG']) {
|
42
|
+
target['TAP_HANDLER_TAG'] = TAG++;
|
43
|
+
}
|
44
|
+
if (!target['LONGPRESS_HANDLER_TAG']) {
|
45
|
+
target['LONGPRESS_HANDLER_TAG'] = TAG++;
|
46
|
+
}
|
47
|
+
if (!target['DOUBLE_TAP_HANDLER_TAG']) {
|
48
|
+
target['DOUBLE_TAP_HANDLER_TAG'] = TAG++;
|
49
|
+
}
|
50
|
+
if (!target['PINCH_HANDLER_TAG']) {
|
51
|
+
target['PINCH_HANDLER_TAG'] = TAG++;
|
52
|
+
}
|
53
|
+
if (!target['PAN_HANDLER_TAG']) {
|
54
|
+
target['PAN_HANDLER_TAG'] = TAG++;
|
55
|
+
}
|
56
|
+
this._callback = callback;
|
57
|
+
this._context = context;
|
58
|
+
}
|
59
|
+
|
60
|
+
public disconnect() {
|
61
|
+
console.log('disconnect');
|
62
|
+
this._detach();
|
63
|
+
|
64
|
+
if (this.target) {
|
65
|
+
this.target.off('loaded', this._onTargetLoaded);
|
66
|
+
this.target.off('unloaded', this._onTargetUnloaded);
|
67
|
+
|
68
|
+
this._onTargetLoaded = null;
|
69
|
+
this._onTargetUnloaded = null;
|
70
|
+
}
|
71
|
+
// clears target, context and callback references
|
72
|
+
// remove gesture observer from map
|
73
|
+
if (this.target) {
|
74
|
+
const list = this.target.getGestureObservers(this.type);
|
75
|
+
if (list && list.length > 0) {
|
76
|
+
for (let i = 0; i < list.length; i++) {
|
77
|
+
if (list[i].callback === this.callback) {
|
78
|
+
break;
|
79
|
+
}
|
80
|
+
}
|
81
|
+
list.length = 0;
|
82
|
+
|
83
|
+
this.target._gestureObservers[this.type].disconnect();
|
84
|
+
// this.target._gestureObservers[this.type] = undefined;
|
85
|
+
delete this.target._gestureObservers[this.type];
|
86
|
+
if (this.target._gestureHandlers && this.target._gestureHandlers[this.type]) {
|
87
|
+
delete this.target._gestureHandlers[this.type];
|
88
|
+
}
|
89
|
+
}
|
90
|
+
}
|
91
|
+
if (this.nObserver) {
|
92
|
+
this.nObserver.disconnect();
|
93
|
+
this.nObserver = null;
|
94
|
+
}
|
95
|
+
this._target = null;
|
96
|
+
this._callback = null;
|
97
|
+
this._context = null;
|
98
|
+
}
|
99
|
+
private _notifyTouch: boolean;
|
100
|
+
|
101
|
+
private gestureHandler: Handler<any, any>;
|
102
|
+
private _eventData: { [k: number]: CommonGestureEventData | TouchGestureEventData } = {};
|
103
|
+
|
104
|
+
private _onTargetLoaded: (data: EventData) => void;
|
105
|
+
private _onTargetUnloaded: (data: EventData) => void;
|
106
|
+
|
107
|
+
public observe(type: GestureTypes) {
|
108
|
+
if (this.target) {
|
109
|
+
this.type = type;
|
110
|
+
this._onTargetLoaded = (args) => {
|
111
|
+
this._attach(this.target, type);
|
112
|
+
};
|
113
|
+
this._onTargetUnloaded = (args) => {
|
114
|
+
this._detach();
|
115
|
+
};
|
116
|
+
|
117
|
+
this.target.on('loaded', this._onTargetLoaded);
|
118
|
+
this.target.on('unloaded', this._onTargetUnloaded);
|
119
|
+
|
120
|
+
if (this.target.isLoaded) {
|
121
|
+
this._attach(this.target, type);
|
122
|
+
}
|
123
|
+
}
|
124
|
+
}
|
125
|
+
|
126
|
+
private _detach() {
|
127
|
+
if (this.gestureHandler) {
|
128
|
+
this.gestureHandler.detachFromView(this.target);
|
129
|
+
this.gestureHandler = null;
|
130
|
+
}
|
131
|
+
delete this.target._gestureHandlers[this.type];
|
132
|
+
this._notifyTouch = false;
|
133
|
+
this._eventData = {};
|
134
|
+
}
|
135
|
+
|
136
|
+
private emitEvent(type: GestureTypes, event: GestureStateEventData) {
|
137
|
+
if (this.callback) {
|
138
|
+
let eventData = this._eventData[type] as CommonGestureEventData;
|
139
|
+
if (!eventData) {
|
140
|
+
switch (type) {
|
141
|
+
case GestureTypes.pan:
|
142
|
+
this._eventData[type] = eventData = new PanGestureEventData(type);
|
143
|
+
break;
|
144
|
+
case GestureTypes.pinch:
|
145
|
+
this._eventData[type] = eventData = new PinchGestureEventData(type);
|
146
|
+
break;
|
147
|
+
case GestureTypes.swipe:
|
148
|
+
this._eventData[type] = eventData = new SwipeGestureEventData(type);
|
149
|
+
break;
|
150
|
+
default:
|
151
|
+
this._eventData[type] = eventData = new CommonGestureEventData(type);
|
152
|
+
break;
|
153
|
+
}
|
154
|
+
}
|
155
|
+
eventData.prepare(this.target, event.data);
|
156
|
+
_executeCallback(this, eventData);
|
157
|
+
// this.callback.call(this._context, {
|
158
|
+
// eventName: gestureToString(type),
|
159
|
+
// object: event.data.view,
|
160
|
+
// type,
|
161
|
+
// ...event.data,
|
162
|
+
// ...event.data.extraData,
|
163
|
+
// });
|
164
|
+
}
|
165
|
+
}
|
166
|
+
private onGestureStateChange(type: GestureTypes, triggerOnstate = -1) {
|
167
|
+
return (event: GestureStateEventData) => {
|
168
|
+
if (triggerOnstate !== -1 && event.data.state !== triggerOnstate) {
|
169
|
+
return;
|
170
|
+
}
|
171
|
+
this.emitEvent(type, event);
|
172
|
+
};
|
173
|
+
}
|
174
|
+
private onGestureTouchChange(type: GestureTypes) {
|
175
|
+
return (event: GestureStateEventData) => {
|
176
|
+
if (event.data.state === GestureState.ACTIVE) {
|
177
|
+
this.emitEvent(type, event);
|
178
|
+
}
|
179
|
+
};
|
180
|
+
}
|
181
|
+
private _attach(
|
182
|
+
target: View & {
|
183
|
+
_gestureHandlers?: any;
|
184
|
+
},
|
185
|
+
type: GestureTypes
|
186
|
+
) {
|
187
|
+
this._detach();
|
188
|
+
if (type & GestureTypes.touch) {
|
189
|
+
this._notifyTouch = true;
|
190
|
+
}
|
191
|
+
const manager = Manager.getInstance();
|
192
|
+
if (!target._gestureHandlers) {
|
193
|
+
target._gestureHandlers = {};
|
194
|
+
}
|
195
|
+
let gestureHandler = target._gestureHandlers[type];
|
196
|
+
|
197
|
+
if (type & GestureTypes.tap) {
|
198
|
+
if (!gestureHandler) {
|
199
|
+
gestureHandler = manager.createGestureHandler(HandlerType.TAP, target['TAP_HANDLER_TAG'], {
|
200
|
+
simultaneousHandlers: [ROOT_GESTURE_HANDLER_TAG],
|
201
|
+
waitFor: [target['LONGPRESS_HANDLER_TAG'], target['DOUBLE_TAP_HANDLER_TAG']],
|
202
|
+
});
|
203
|
+
gestureHandler.attachToView(target);
|
204
|
+
target._gestureHandlers[type] = gestureHandler;
|
205
|
+
}
|
206
|
+
gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.tap, GestureState.ACTIVE), this);
|
207
|
+
}
|
208
|
+
if (type & GestureTypes.longPress) {
|
209
|
+
if (!gestureHandler) {
|
210
|
+
gestureHandler = manager.createGestureHandler(HandlerType.LONG_PRESS, target['LONGPRESS_HANDLER_TAG'], {
|
211
|
+
simultaneousHandlers: [ROOT_GESTURE_HANDLER_TAG],
|
212
|
+
});
|
213
|
+
gestureHandler.attachToView(target);
|
214
|
+
target._gestureHandlers[type] = gestureHandler;
|
215
|
+
}
|
216
|
+
gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.longPress, GestureState.ACTIVE), this);
|
217
|
+
}
|
218
|
+
if (type & GestureTypes.doubleTap) {
|
219
|
+
if (!gestureHandler) {
|
220
|
+
gestureHandler = manager.createGestureHandler(HandlerType.TAP, target['DOUBLE_TAP_HANDLER_TAG'], {
|
221
|
+
numberOfTaps: 2,
|
222
|
+
simultaneousHandlers: [ROOT_GESTURE_HANDLER_TAG],
|
223
|
+
});
|
224
|
+
gestureHandler.attachToView(target);
|
225
|
+
target._gestureHandlers[type] = gestureHandler;
|
226
|
+
}
|
227
|
+
gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.doubleTap), this);
|
228
|
+
}
|
229
|
+
|
230
|
+
if (type & GestureTypes.pinch) {
|
231
|
+
if (!gestureHandler) {
|
232
|
+
gestureHandler = manager.createGestureHandler(HandlerType.PINCH, target['PINCH_HANDLER_TAG'], {
|
233
|
+
simultaneousHandlers: [target['PAN_HANDLER_TAG'], ROOT_GESTURE_HANDLER_TAG],
|
234
|
+
});
|
235
|
+
gestureHandler.attachToView(target);
|
236
|
+
target._gestureHandlers[type] = gestureHandler;
|
237
|
+
}
|
238
|
+
gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.pinch), this);
|
239
|
+
gestureHandler.on(GestureHandlerTouchEvent, this.onGestureTouchChange(GestureTypes.pinch), this);
|
240
|
+
}
|
241
|
+
|
242
|
+
if (type & GestureTypes.swipe) {
|
243
|
+
if (!gestureHandler) {
|
244
|
+
gestureHandler = manager.createGestureHandler(HandlerType.FLING, TAG++, {
|
245
|
+
simultaneousHandlers: [ROOT_GESTURE_HANDLER_TAG],
|
246
|
+
});
|
247
|
+
gestureHandler.attachToView(target);
|
248
|
+
target._gestureHandlers[type] = gestureHandler;
|
249
|
+
}
|
250
|
+
gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.swipe), this);
|
251
|
+
}
|
252
|
+
|
253
|
+
if (type & GestureTypes.pan) {
|
254
|
+
if (!gestureHandler) {
|
255
|
+
gestureHandler = manager.createGestureHandler(HandlerType.PAN, target['PAN_HANDLER_TAG'], {
|
256
|
+
simultaneousHandlers: [target['PINCH_HANDLER_TAG'], ROOT_GESTURE_HANDLER_TAG],
|
257
|
+
});
|
258
|
+
gestureHandler.attachToView(target);
|
259
|
+
target._gestureHandlers[type] = gestureHandler;
|
260
|
+
}
|
261
|
+
gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.pan), this);
|
262
|
+
gestureHandler.on(GestureHandlerTouchEvent, this.onGestureTouchChange(GestureTypes.pan), this);
|
263
|
+
}
|
264
|
+
|
265
|
+
if (type & GestureTypes.rotation) {
|
266
|
+
if (!gestureHandler) {
|
267
|
+
gestureHandler = manager.createGestureHandler(HandlerType.ROTATION, TAG++, {
|
268
|
+
simultaneousHandlers: [ROOT_GESTURE_HANDLER_TAG],
|
269
|
+
});
|
270
|
+
gestureHandler.attachToView(target);
|
271
|
+
target._gestureHandlers[type] = gestureHandler;
|
272
|
+
}
|
273
|
+
gestureHandler.on(GestureHandlerStateEvent, this.onGestureStateChange(GestureTypes.rotation), this);
|
274
|
+
gestureHandler.on(GestureHandlerTouchEvent, this.onGestureTouchChange(GestureTypes.rotation), this);
|
275
|
+
}
|
276
|
+
if (type & GestureTypes.touch && global.isIOS) {
|
277
|
+
// let s not reimplement it for touch
|
278
|
+
const nObserver = new NGesturesObserver(target, this.callback, this.context);
|
279
|
+
nObserver.observe(type);
|
280
|
+
this.nObserver = nObserver;
|
281
|
+
}
|
282
|
+
this.gestureHandler = gestureHandler;
|
283
|
+
}
|
284
|
+
|
285
|
+
public androidOnTouchEvent(motionEvent: android.view.MotionEvent) {
|
286
|
+
if (this._notifyTouch) {
|
287
|
+
let eventData = this._eventData[GestureTypes.touch];
|
288
|
+
if (!eventData) {
|
289
|
+
eventData = this._eventData[GestureTypes.touch] = new TouchGestureEventData();
|
290
|
+
}
|
291
|
+
eventData.prepare(this.target, motionEvent);
|
292
|
+
_executeCallback(this, eventData);
|
293
|
+
}
|
294
|
+
}
|
295
|
+
}
|
296
|
+
|
297
|
+
class Pointer implements Pointer {
|
298
|
+
public android: number;
|
299
|
+
public ios: any = undefined;
|
300
|
+
|
301
|
+
constructor(id: number, private event: android.view.MotionEvent) {
|
302
|
+
this.android = id;
|
303
|
+
}
|
304
|
+
|
305
|
+
getX(): number {
|
306
|
+
return this.event.getX(this.android) / layout.getDisplayDensity();
|
307
|
+
}
|
308
|
+
|
309
|
+
getY(): number {
|
310
|
+
return this.event.getY(this.android) / layout.getDisplayDensity();
|
311
|
+
}
|
312
|
+
}
|
313
|
+
class GesturePointer {
|
314
|
+
android: number;
|
315
|
+
ios: number;
|
316
|
+
private event: any;
|
317
|
+
constructor(index: number, private x, private y) {
|
318
|
+
this.android = index;
|
319
|
+
}
|
320
|
+
|
321
|
+
getX(): number {
|
322
|
+
return this.x;
|
323
|
+
}
|
324
|
+
|
325
|
+
getY(): number {
|
326
|
+
return this.y;
|
327
|
+
}
|
328
|
+
}
|
329
|
+
|
330
|
+
class CommonGestureEventData implements GestureEventData {
|
331
|
+
ios;
|
332
|
+
android;
|
333
|
+
eventName: string;
|
334
|
+
type: GestureTypes;
|
335
|
+
view: View;
|
336
|
+
object: any;
|
337
|
+
eventData: {
|
338
|
+
state: GestureState;
|
339
|
+
ios?: any; // native View
|
340
|
+
android?: any; // native View
|
341
|
+
view?: View; // native View
|
342
|
+
extraData: {
|
343
|
+
numberOfPointers: number;
|
344
|
+
[k: string]: number | string;
|
345
|
+
};
|
346
|
+
};
|
347
|
+
state: GestureStateTypes;
|
348
|
+
|
349
|
+
private _activePointers: GesturePointer[];
|
350
|
+
private _allPointers: GesturePointer[];
|
351
|
+
|
352
|
+
constructor(type: GestureTypes) {
|
353
|
+
this.eventName = gestureToString(type);
|
354
|
+
this.type = type;
|
355
|
+
}
|
356
|
+
|
357
|
+
public prepare(view: View, eventData) {
|
358
|
+
this.view = view;
|
359
|
+
this.object = view;
|
360
|
+
this._activePointers = undefined;
|
361
|
+
this._allPointers = undefined;
|
362
|
+
this.eventData = eventData;
|
363
|
+
switch (this.eventData.state) {
|
364
|
+
case GestureState.BEGAN:
|
365
|
+
this.state = GestureStateTypes.began;
|
366
|
+
break;
|
367
|
+
case GestureState.CANCELLED:
|
368
|
+
case GestureState.FAILED:
|
369
|
+
this.state = GestureStateTypes.cancelled;
|
370
|
+
break;
|
371
|
+
case GestureState.ACTIVE:
|
372
|
+
this.state = GestureStateTypes.changed;
|
373
|
+
break;
|
374
|
+
case GestureState.END:
|
375
|
+
this.state = GestureStateTypes.ended;
|
376
|
+
break;
|
377
|
+
}
|
378
|
+
}
|
379
|
+
|
380
|
+
get extraData() {
|
381
|
+
return this.eventData.extraData;
|
382
|
+
}
|
383
|
+
|
384
|
+
getPointerCount(): number {
|
385
|
+
return this.extraData.numberOfPointers;
|
386
|
+
}
|
387
|
+
|
388
|
+
getActivePointers() {
|
389
|
+
// Only one active pointer in Android
|
390
|
+
if (!this._activePointers) {
|
391
|
+
const positions = this.extraData.positions;
|
392
|
+
this._activePointers = [new GesturePointer(0, positions[0], positions[1])];
|
393
|
+
}
|
394
|
+
return this._activePointers;
|
395
|
+
}
|
396
|
+
|
397
|
+
getAllPointers() {
|
398
|
+
if (!this._allPointers) {
|
399
|
+
this._allPointers = [];
|
400
|
+
const positions = this.extraData.positions;
|
401
|
+
for (let i = 0; i < this.getPointerCount(); i++) {
|
402
|
+
this._allPointers.push(new GesturePointer(i, positions[i * 2], positions[i * 2 + 1]));
|
403
|
+
}
|
404
|
+
}
|
405
|
+
return this._allPointers;
|
406
|
+
}
|
407
|
+
|
408
|
+
getX(): number {
|
409
|
+
return this.extraData.x as number;
|
410
|
+
}
|
411
|
+
|
412
|
+
getY(): number {
|
413
|
+
return this.extraData.y as number;
|
414
|
+
}
|
415
|
+
|
416
|
+
private getActionType(e: android.view.MotionEvent): string {
|
417
|
+
switch (e.getActionMasked()) {
|
418
|
+
case android.view.MotionEvent.ACTION_DOWN:
|
419
|
+
case android.view.MotionEvent.ACTION_POINTER_DOWN:
|
420
|
+
return TouchAction.down;
|
421
|
+
case android.view.MotionEvent.ACTION_MOVE:
|
422
|
+
return TouchAction.move;
|
423
|
+
case android.view.MotionEvent.ACTION_UP:
|
424
|
+
case android.view.MotionEvent.ACTION_POINTER_UP:
|
425
|
+
return TouchAction.up;
|
426
|
+
case android.view.MotionEvent.ACTION_CANCEL:
|
427
|
+
return TouchAction.cancel;
|
428
|
+
}
|
429
|
+
|
430
|
+
return '';
|
431
|
+
}
|
432
|
+
}
|
433
|
+
class TouchGestureEventData {
|
434
|
+
eventName: string = gestureToString(GestureTypes.touch);
|
435
|
+
type: GestureTypes = GestureTypes.touch;
|
436
|
+
ios: any = undefined;
|
437
|
+
action: string;
|
438
|
+
view: View;
|
439
|
+
android: android.view.MotionEvent;
|
440
|
+
object: any;
|
441
|
+
state: GestureStateTypes;
|
442
|
+
|
443
|
+
private _activePointers: Pointer[];
|
444
|
+
private _allPointers: Pointer[];
|
445
|
+
|
446
|
+
public prepare(view: View, e: android.view.MotionEvent) {
|
447
|
+
this.view = view;
|
448
|
+
this.object = view;
|
449
|
+
this.android = e;
|
450
|
+
this.action = this.getActionType(e);
|
451
|
+
this._activePointers = undefined;
|
452
|
+
this._allPointers = undefined;
|
453
|
+
}
|
454
|
+
|
455
|
+
getPointerCount(): number {
|
456
|
+
return this.android.getPointerCount();
|
457
|
+
}
|
458
|
+
|
459
|
+
getActivePointers(): Pointer[] {
|
460
|
+
// Only one active pointer in Android
|
461
|
+
if (!this._activePointers) {
|
462
|
+
this._activePointers = [new Pointer(this.android.getActionIndex(), this.android)];
|
463
|
+
}
|
464
|
+
return this._activePointers;
|
465
|
+
}
|
466
|
+
|
467
|
+
getAllPointers(): Pointer[] {
|
468
|
+
if (!this._allPointers) {
|
469
|
+
this._allPointers = [];
|
470
|
+
for (let i = 0; i < this.getPointerCount(); i++) {
|
471
|
+
this._allPointers.push(new Pointer(i, this.android));
|
472
|
+
}
|
473
|
+
}
|
474
|
+
return this._allPointers;
|
475
|
+
}
|
476
|
+
|
477
|
+
getX(): number {
|
478
|
+
return this.getActivePointers()[0].getX();
|
479
|
+
}
|
480
|
+
|
481
|
+
getY(): number {
|
482
|
+
return this.getActivePointers()[0].getY();
|
483
|
+
}
|
484
|
+
|
485
|
+
private getActionType(e: android.view.MotionEvent): string {
|
486
|
+
switch (e.getActionMasked()) {
|
487
|
+
case android.view.MotionEvent.ACTION_DOWN:
|
488
|
+
case android.view.MotionEvent.ACTION_POINTER_DOWN:
|
489
|
+
return TouchAction.down;
|
490
|
+
case android.view.MotionEvent.ACTION_MOVE:
|
491
|
+
return TouchAction.move;
|
492
|
+
case android.view.MotionEvent.ACTION_UP:
|
493
|
+
case android.view.MotionEvent.ACTION_POINTER_UP:
|
494
|
+
return TouchAction.up;
|
495
|
+
case android.view.MotionEvent.ACTION_CANCEL:
|
496
|
+
return TouchAction.cancel;
|
497
|
+
}
|
498
|
+
|
499
|
+
return '';
|
500
|
+
}
|
501
|
+
}
|
502
|
+
|
503
|
+
function _getSwipeDirection(direction: string): SwipeDirection {
|
504
|
+
return SwipeDirection[direction];
|
505
|
+
}
|
506
|
+
class SwipeGestureEventData extends CommonGestureEventData {
|
507
|
+
get direction() {
|
508
|
+
return _getSwipeDirection(this.extraData.direction as string);
|
509
|
+
}
|
510
|
+
}
|
511
|
+
class PanGestureEventData extends CommonGestureEventData {
|
512
|
+
get deltaX() {
|
513
|
+
return this.eventData.extraData.translationX;
|
514
|
+
}
|
515
|
+
get deltaY() {
|
516
|
+
return this.eventData.extraData.translationY;
|
517
|
+
}
|
518
|
+
}
|
519
|
+
class PinchGestureEventData extends CommonGestureEventData {
|
520
|
+
getFocusX() {
|
521
|
+
return this.eventData.extraData.focalX;
|
522
|
+
}
|
523
|
+
getFocusY() {
|
524
|
+
return this.eventData.extraData.focalY;
|
525
|
+
}
|
526
|
+
get scale() {
|
527
|
+
return this.eventData.extraData.scale;
|
528
|
+
}
|
529
|
+
}
|
530
|
+
|
531
|
+
function _executeCallback(observer: GesturesObserver, args: GestureEventData) {
|
532
|
+
if (observer && observer.callback) {
|
533
|
+
observer.callback.call((observer as any)._context, args);
|
534
|
+
}
|
535
|
+
}
|