@nativescript-community/gesturehandler 2.0.0 → 2.0.3
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/.pnpm-debug.log +1 -0
- package/CHANGELOG.md +78 -138
- package/README.md +132 -12
- package/{packages/gesturehandler/blueprint.md → blueprint.md} +0 -0
- package/gesturehandler.android.d.ts +180 -0
- package/{.history/src/gesturehandler/gesturehandler.android_20220328163618.ts → gesturehandler.android.js} +209 -229
- package/gesturehandler.android.js.map +1 -0
- package/gesturehandler.common.d.ts +96 -0
- package/{.history/src/gesturehandler.common_20210512114125.ts → gesturehandler.common.js} +69 -156
- package/gesturehandler.common.js.map +1 -0
- package/{src/gesturehandler/gesturehandler.d.ts → gesturehandler.d.ts} +0 -0
- package/gesturehandler.ios.d.ts +56 -0
- package/{.history/src/gesturehandler.ios_20210422150701.ts → gesturehandler.ios.js} +71 -100
- package/gesturehandler.ios.js.map +1 -0
- package/gestures_override.d.ts +29 -0
- package/{.history/src/gesturehandler/gestures_override_20220328170818.ts → gestures_override.js} +84 -222
- package/gestures_override.js.map +1 -0
- package/package.json +51 -60
- package/{packages/gesturehandler/platforms → platforms}/android/AndroidManifest.xml +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/include.gradle +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/nativescript/gesturehandler/GestureHandlerInteractionController.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/nativescript/gesturehandler/PageLayout.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/nativescript/gesturehandler/RootViewGestureHandler.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/BaseGestureHandlerInteractionController.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/FlingGestureHandler.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/GestureHandler.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/GestureHandlerInteractionController.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/GestureHandlerOrchestrator.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/GestureHandlerRegistry.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/GestureHandlerRegistryImpl.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/GestureUtils.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/LongPressGestureHandler.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/NativeViewGestureHandler.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/OnTouchEventListener.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/PanGestureHandler.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/PinchGestureHandler.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/PointerEvents.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/PointerEventsConfig.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/PointerEventsSpec.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/RotationGestureDetector.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/RotationGestureHandler.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/ScaleGestureDetector.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/TapGestureHandler.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/java/com/swmansion/gesturehandler/ViewConfigurationHelper.java +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/native-api-usage.json +0 -0
- package/{packages/gesturehandler/platforms → platforms}/android/res/values/config.xml +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/FlingHandler.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/FlingHandler.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/ForceTouchHandler.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/ForceTouchHandler.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/GestureHandler.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/GestureHandler.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/GestureHandlerDirection.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/GestureHandlerEvents.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/GestureHandlerEvents.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/GestureHandlerHeader.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/GestureHandlerManager.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/GestureHandlerManager.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/GestureHandlerRegistry.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/GestureHandlerRegistry.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/GestureHandlerState.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/LongPressHandler.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/LongPressHandler.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/NativeViewHandler.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/NativeViewHandler.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/PanHandler.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/PanHandler.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/PinchHandler.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/PinchHandler.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/RootViewGestureRecognizer.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/RootViewGestureRecognizer.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/RotationHandler.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/RotationHandler.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/TapHandler.h +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/TapHandler.m +0 -0
- package/{packages/gesturehandler/platforms → platforms}/ios/src/module.modulemap +0 -0
- package/react/index.d.ts +20 -0
- package/react/index.js +9 -0
- package/react/index.js.map +1 -0
- package/references.d.ts +3 -3
- package/svelte/index.d.ts +11 -0
- package/svelte/index.js +26 -0
- package/svelte/index.js.map +1 -0
- package/tsconfig.json +8 -4
- package/{src/gesturehandler/typings → typings}/android.d.ts +0 -0
- package/{src/gesturehandler/typings → typings}/extensions.android.d.ts +0 -0
- package/{src/gesturehandler/typings → typings}/ios.d.ts +0 -0
- package/vue/index.d.ts +4 -0
- package/{.history/src/gesturehandler/vue/index_20220328163021.ts → vue/index.js} +1 -1
- package/vue/index.js.map +1 -0
- package/.classpath +0 -12
- package/.eslintrc.js +0 -3
- package/.gitattributes +0 -17
- package/.github/FUNDING.yml +0 -1
- package/.github/issue_template.md +0 -28
- package/.gitmodules +0 -6
- 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 +0 -2
- 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 +0 -22
- package/.history/build_20220218093019.gradle +0 -22
- package/.history/build_20220218093024.gradle +0 -22
- package/.history/build_20220218093151.gradle +0 -22
- package/.history/build_20220218093200.gradle +0 -22
- package/.history/build_20220218093224.gradle +0 -22
- package/.history/build_20220218093249.gradle +0 -22
- package/.history/build_20220218093334.gradle +0 -22
- package/.history/build_20220218093339.gradle +0 -22
- package/.history/build_20220218093341.gradle +0 -22
- package/.history/build_20220218093411.gradle +0 -22
- package/.history/build_20220218093413.gradle +0 -22
- package/.history/build_20220218093416.gradle +0 -22
- package/.history/build_20220218093421.gradle +0 -23
- package/.history/build_20220218093423.gradle +0 -22
- package/.history/build_20220218100008.gradle +0 -22
- package/.history/demo-snippets/package_20211119094134.json +0 -7
- package/.history/demo-snippets/package_20220328153105.json +0 -7
- package/.history/demo-snippets/package_20220328153251.json +0 -7
- package/.history/demo-snippets/package_20220328153410.json +0 -7
- package/.history/demo-snippets/vue/Basic_20210917174642.vue +0 -46
- package/.history/demo-snippets/vue/Basic_20220328154031.vue +0 -44
- package/.history/demo-snippets/vue/Basic_20220328154730.vue +0 -46
- package/.history/demo-snippets/vue/Basic_20220328154741.vue +0 -46
- package/.history/demo-snippets/vue/Basic_20220328154807.vue +0 -47
- package/.history/demo-snippets/vue/Basic_20220328154838.vue +0 -51
- package/.history/demo-snippets/vue/Basic_20220328154839.vue +0 -51
- package/.history/demo-snippets/vue/Basic_20220328154901.vue +0 -52
- package/.history/demo-snippets/vue/Basic_20220328154925.vue +0 -52
- package/.history/demo-snippets/vue/Basic_20220328162644.vue +0 -52
- package/.history/demo-snippets/vue/Basic_20220328162656.vue +0 -48
- package/.history/demo-snippets/vue/Basic_20220328162658.vue +0 -48
- package/.history/demo-snippets/vue/Basic_20220328162731.vue +0 -48
- package/.history/demo-snippets/vue/ModalView_20220328154527.vue +0 -0
- package/.history/demo-snippets/vue/ModalView_20220328154555.vue +0 -15
- package/.history/demo-snippets/vue/ModalView_20220328162755.vue +0 -15
- package/.history/demo-snippets/vue/ModalView_20220328162915.vue +0 -17
- package/.history/demo-snippets/vue/install_20211117134051.ts +0 -14
- package/.history/demo-snippets/vue/install_20220328153411.ts +0 -10
- package/.history/demo-snippets/vue/install_20220328154031.ts +0 -9
- package/.history/demo-snippets/vue/install_20220328162915.ts +0 -10
- package/.history/demo-vue/.npmrc_20220328151942 +0 -1
- package/.history/demo-vue/.npmrc_20220329084955 +0 -2
- package/.history/demo-vue/package_20220328151942.json +0 -60
- package/.history/demo-vue/package_20220328153206.json +0 -60
- package/.history/demo-vue/package_20220328153218.json +0 -59
- package/.history/demo-vue/package_20220328153326.json +0 -60
- package/.history/demo-vue/package_20220328153411.json +0 -60
- package/.history/demo_vue/app/App_20201115162303.vue +0 -118
- package/.history/demo_vue/app/App_20220328150238.vue +0 -118
- package/.history/demo_vue/app/App_20220328150240.vue +0 -116
- package/.history/demo_vue/app/App_20220328150241.vue +0 -115
- package/.history/demo_vue/package_20210511163846.json +0 -30
- package/.history/demo_vue/package_20220328145031.json +0 -30
- package/.history/demo_vue/package_20220328150155.json +0 -30
- package/.history/demo_vue/package_20220328151156.json +0 -29
- package/.history/demo_vue/tsconfig_20200909142713.json +0 -30
- package/.history/demo_vue/tsconfig_20220328151126.json +0 -28
- package/.history/demo_vue/tsconfig_20220328151129.json +0 -27
- package/.history/demo_vue/webpack.config_20200909141619.js +0 -370
- package/.history/demo_vue/webpack.config_20220328145113.js +0 -6
- package/.history/demo_vue/webpack.config_20220328145115.js +0 -5
- package/.history/lerna_20220104212014.json +0 -21
- package/.history/lerna_20220328152313.json +0 -21
- package/.history/package_20220311095923.json +0 -74
- package/.history/package_20220328152312.json +0 -74
- package/.history/packages/gesturehandler/blueprint_20220306151807.md +0 -221
- package/.history/packages/gesturehandler/blueprint_20220328164413.md +0 -74
- package/.history/packages/gesturehandler/package_20220325110528.json +0 -39
- package/.history/packages/gesturehandler/package_20220328152653.json +0 -52
- package/.history/packages/gesturehandler/package_20220328152719.json +0 -52
- package/.history/packages/gesturehandler/package_20220328153446.json +0 -52
- package/.history/packages/gesturehandler/package_20220328164418.json +0 -52
- package/.history/packages/gesturehandler/package_20220328164722.json +0 -52
- package/.history/packages/gesturehandler/platforms/android/java/com/swmansion/gesturehandler/GestureHandler_20210517182228.java +0 -544
- package/.history/packages/gesturehandler/platforms/android/java/com/swmansion/gesturehandler/GestureHandler_20220331104607.java +0 -540
- package/.history/packages/gesturehandler/platforms/android/java/com/swmansion/gesturehandler/LongPressGestureHandler_20210512101356.java +0 -81
- package/.history/packages/gesturehandler/platforms/android/java/com/swmansion/gesturehandler/LongPressGestureHandler_20220331111050.java +0 -81
- package/.history/packages/gesturehandler/tsconfig_20220328152950.json +0 -13
- package/.history/packages/gesturehandler/tsconfig_20220328153011.json +0 -13
- package/.history/plugin/platforms/android/include_20220125161223.gradle +0 -10
- package/.history/plugin/platforms/android/include_20220217110818.gradle +0 -19
- package/.history/plugin/platforms/android/include_20220217112410.gradle +0 -18
- package/.history/plugin/platforms/android/include_20220217153211.gradle +0 -19
- package/.history/plugin/platforms/android/include_20220218092908.gradle +0 -19
- package/.history/plugin/platforms/android/java/com/nativescript/gesturehandler/GestureLayout_20220217101202.java +0 -189
- package/.history/plugin/platforms/android/java/com/nativescript/gesturehandler/GestureLayout_20220217101931.java +0 -185
- package/.history/plugin/platforms/ios/src/GestureHandler_20201106183454.h +0 -98
- package/.history/plugin/platforms/ios/src/GestureHandler_20201111112216.m +0 -365
- package/.history/plugin/platforms/ios/src/GestureHandler_20220104160100.m +0 -369
- package/.history/plugin/platforms/ios/src/GestureHandler_20220104172158.h +0 -101
- package/.history/src/gesturehandler/gesturehandler.android_20220328144612.ts +0 -610
- package/.history/src/gesturehandler/gesturehandler.android_20220328154126.ts +0 -609
- package/.history/src/gesturehandler/gesturehandler.android_20220328154143.ts +0 -609
- package/.history/src/gesturehandler/gesturehandler.android_20220328154730.ts +0 -610
- package/.history/src/gesturehandler/gesturehandler.android_20220328160735.ts +0 -610
- package/.history/src/gesturehandler/gesturehandler.android_20220328161307.ts +0 -612
- package/.history/src/gesturehandler/gesturehandler.android_20220328161410.ts +0 -613
- package/.history/src/gesturehandler/gesturehandler.android_20220328161742.ts +0 -612
- package/.history/src/gesturehandler/gesturehandler.android_20220328162317.ts +0 -613
- package/.history/src/gesturehandler/gesturehandler.android_20220328162541.ts +0 -613
- package/.history/src/gesturehandler/gesturehandler.android_20220328162915.ts +0 -611
- package/.history/src/gesturehandler/gesturehandler.android_20220328163707.ts +0 -610
- package/.history/src/gesturehandler/gesturehandler.common_20220328144620.ts +0 -325
- package/.history/src/gesturehandler/gesturehandler.common_20220328153656.ts +0 -325
- package/.history/src/gesturehandler/gestures_override_20210512114352.ts +0 -523
- package/.history/src/gesturehandler/gestures_override_20220328155041.ts +0 -523
- package/.history/src/gesturehandler/gestures_override_20220328155424.ts +0 -525
- package/.history/src/gesturehandler/gestures_override_20220328160121.ts +0 -527
- package/.history/src/gesturehandler/gestures_override_20220328160132.ts +0 -527
- package/.history/src/gesturehandler/gestures_override_20220328160220.ts +0 -528
- package/.history/src/gesturehandler/gestures_override_20220328160416.ts +0 -529
- package/.history/src/gesturehandler/gestures_override_20220328160731.ts +0 -535
- package/.history/src/gesturehandler/gestures_override_20220328160808.ts +0 -536
- package/.history/src/gesturehandler/gestures_override_20220328160834.ts +0 -536
- package/.history/src/gesturehandler/gestures_override_20220328160909.ts +0 -536
- package/.history/src/gesturehandler/gestures_override_20220328160931.ts +0 -536
- package/.history/src/gesturehandler/gestures_override_20220328161052.ts +0 -536
- package/.history/src/gesturehandler/gestures_override_20220328161319.ts +0 -536
- package/.history/src/gesturehandler/gestures_override_20220328161759.ts +0 -534
- package/.history/src/gesturehandler/gestures_override_20220328162317.ts +0 -535
- package/.history/src/gesturehandler/gestures_override_20220328162503.ts +0 -535
- package/.history/src/gesturehandler/gestures_override_20220328170816.ts +0 -533
- package/.history/src/gesturehandler/vue/index_20201021164506.ts +0 -12
- package/.history/src/gesturehandler.android_20220325103749.ts +0 -574
- package/.history/src/gesturehandler.android_20220325110406.ts +0 -574
- package/.history/src/gesturehandler.android_20220328144613.ts +0 -610
- package/.history/src/gesturehandler.common_20220328144621.ts +0 -325
- package/.history/src/gesturehandler.d_20210422150412.ts +0 -154
- package/.history/src/gesturehandler.d_20220328144718.ts +0 -156
- package/.history/src/gesturehandler.ios_20220328144653.ts +0 -296
- package/.history/src/references.d_20200412093513.ts +0 -3
- package/.history/src/references.d_20220328144701.ts +0 -3
- package/.history/tsconfig_20220306153539.json +0 -9
- package/.history/tsconfig_20220328152313.json +0 -9
- package/.prettierignore +0 -4
- package/.prettierrc +0 -6
- package/.prettierrc.js +0 -7
- package/.settings/org.eclipse.buildship.core.prefs +0 -13
- package/.vscode/settings.json +0 -19
- package/CONTRIBUTING.md +0 -19
- package/build.gradle +0 -22
- package/config.json +0 -7
- package/demo-snippets/node_modules/.package-lock.json +0 -20
- package/demo-snippets/package.json +0 -7
- package/demo-snippets/vue/Basic.vue +0 -48
- package/demo-snippets/vue/ModalView.vue +0 -17
- package/demo-snippets/vue/install.ts +0 -10
- package/demo-vue/App_Resources/Android/app.gradle +0 -20
- package/demo-vue/App_Resources/Android/src/main/AndroidManifest.xml +0 -42
- package/demo-vue/App_Resources/Android/src/main/res/drawable/ic_launcher_foreground.xml +0 -15
- 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 +0 -8
- 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 +0 -5
- 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 +0 -7
- package/demo-vue/App_Resources/Android/src/main/res/values/ic_launcher_background.xml +0 -4
- package/demo-vue/App_Resources/Android/src/main/res/values/styles.xml +0 -42
- package/demo-vue/App_Resources/Android/src/main/res/values-v21/colors.xml +0 -4
- package/demo-vue/App_Resources/Android/src/main/res/values-v21/styles.xml +0 -28
- package/demo-vue/App_Resources/Android/src/main/res/values-v29/styles.xml +0 -12
- package/demo-vue/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/Contents.json +0 -122
- 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 +0 -6
- package/demo-vue/App_Resources/iOS/Assets.xcassets/LaunchScreen.AspectFill.imageset/Contents.json +0 -23
- 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 +0 -23
- 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 +0 -47
- package/demo-vue/App_Resources/iOS/LaunchScreen.storyboard +0 -53
- package/demo-vue/App_Resources/iOS/build.xcconfig +0 -6
- package/demo-vue/app/app.scss +0 -11
- package/demo-vue/app/app.ts +0 -9
- package/demo-vue/app/components/Menu.vue +0 -54
- package/demo-vue/nativescript.config.ts +0 -11
- package/demo-vue/package.json +0 -60
- package/demo-vue/tsconfig.json +0 -25
- package/demo-vue/types/references.d.ts +0 -1
- package/demo-vue/types/shims.vue.d.ts +0 -4
- package/demo-vue/webpack.config.js +0 -42
- package/images/demo.gif +0 -0
- package/lerna.json +0 -21
- package/packages/gesturehandler/CHANGELOG.md +0 -609
- package/packages/gesturehandler/README.md +0 -176
- package/packages/gesturehandler/package.json +0 -52
- package/packages/gesturehandler/tsconfig.json +0 -13
- package/src/gesturehandler/gesturehandler.android.ts +0 -610
- package/src/gesturehandler/gesturehandler.common.ts +0 -325
- package/src/gesturehandler/gesturehandler.ios.ts +0 -296
- package/src/gesturehandler/gestures_override.ts +0 -532
- package/src/gesturehandler/references.d.ts +0 -3
- package/src/gesturehandler/vue/index.ts +0 -7
- package/src-native/.vscode/settings.json +0 -3
- package/src-native/android/.settings/org.eclipse.buildship.core.prefs +0 -13
- package/src-native/android/.vscode/settings.json +0 -3
- package/src-native/android/README.md +0 -14
- package/src-native/android/build.gradle +0 -25
- package/src-native/android/build.sh +0 -36
- package/src-native/android/gesturehandler/.classpath +0 -6
- package/src-native/android/gesturehandler/.settings/org.eclipse.buildship.core.prefs +0 -2
- package/src-native/android/gesturehandler/build.gradle +0 -84
- package/src-native/android/gesturehandler/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/src-native/android/gesturehandler/gradle/wrapper/gradle-wrapper.properties +0 -6
- package/src-native/android/gesturehandler/gradlew +0 -160
- package/src-native/android/gesturehandler/gradlew.bat +0 -90
- package/src-native/android/gesturehandler/local.properties +0 -9
- package/src-native/android/gesturehandler/proguard-rules.pro +0 -17
- package/src-native/android/gesturehandler/src/main/AndroidManifest.xml +0 -9
- package/src-native/android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/src-native/android/gradle/wrapper/gradle-wrapper.properties +0 -6
- package/src-native/android/gradle.properties +0 -23
- package/src-native/android/gradlew +0 -160
- package/src-native/android/gradlew.bat +0 -90
- package/src-native/android/settings.gradle +0 -1
- package/src-native/ios/GestureHandler.xcodeproj/project.pbxproj +0 -662
- package/src-native/ios/GestureHandler.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
- package/src-native/ios/GestureHandler.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
- package/src-native/ios/GestureHandler.xcodeproj/xcshareddata/xcschemes/GestureHandler.xcscheme +0 -76
- package/src-native/ios/GestureHandler.xcodeproj/xcshareddata/xcschemes/GestureHandlerApp.xcscheme +0 -87
- package/src-native/ios/GestureHandler.xcodeproj/xcshareddata/xcschemes/GestureHandlerLib.xcscheme +0 -76
- package/src-native/ios/GestureHandler.xcodeproj/xcshareddata/xcschemes/test.xcscheme +0 -76
- package/src-native/ios/GestureHandler.xcodeproj/xcshareddata/xcschemes/universal.xcscheme +0 -76
- package/src-native/ios/build.sh +0 -10
- package/tools/.eslintrc.js +0 -252
- package/tools/builddoc.mjs +0 -54
- package/tools/common/.eslintrc.js +0 -3
- package/tools/common/.prettierignore +0 -4
- package/tools/common/.prettierrc.js +0 -7
- package/tools/common/references.d.ts +0 -3
- package/tools/package.json +0 -116
- package/tools/readme/blueprint.json +0 -10
- package/tools/readme/demos-and-development.md +0 -35
- package/tools/readme/edit-warning.md +0 -20
- package/tools/readme/questions.md +0 -3
- package/tools/readme.js +0 -54
- package/tools/sync.js +0 -102
- package/tools/tsconfig.doc.json +0 -10
- package/tools/tsconfig.eslint.json +0 -4
- package/tools/tsconfig.json +0 -38
- package/tools/typedoc.js +0 -17
- package/tools/update.js +0 -32
@@ -1,369 +0,0 @@
|
|
1
|
-
#import "GestureHandler.h"
|
2
|
-
|
3
|
-
#import "NativeViewHandler.h"
|
4
|
-
|
5
|
-
#import <UIKit/UIGestureRecognizerSubclass.h>
|
6
|
-
|
7
|
-
|
8
|
-
@interface UIGestureRecognizer (GestureHandler)
|
9
|
-
@property (nonatomic, readonly) GestureHandler *gestureHandler;
|
10
|
-
@end
|
11
|
-
|
12
|
-
|
13
|
-
@implementation UIGestureRecognizer (GestureHandler)
|
14
|
-
|
15
|
-
- (GestureHandler *)gestureHandler
|
16
|
-
{
|
17
|
-
id delegate = self.delegate;
|
18
|
-
if ([delegate isKindOfClass:[GestureHandler class]]) {
|
19
|
-
return (GestureHandler *)delegate;
|
20
|
-
}
|
21
|
-
return nil;
|
22
|
-
}
|
23
|
-
|
24
|
-
@end
|
25
|
-
|
26
|
-
typedef struct GHHitSlop {
|
27
|
-
CGFloat top, left, bottom, right, width, height;
|
28
|
-
} RNGHHitSlop;
|
29
|
-
|
30
|
-
static RNGHHitSlop RNGHHitSlopEmpty = { NAN, NAN, NAN, NAN, NAN, NAN };
|
31
|
-
|
32
|
-
#define GH_HIT_SLOP_GET(key) (prop[key] == nil ? NAN : [prop[key] doubleValue])
|
33
|
-
#define GH_HIT_SLOP_IS_SET(hitSlop) (!isnan(hitSlop.left) || !isnan(hitSlop.right) || \
|
34
|
-
!isnan(hitSlop.top) || !isnan(hitSlop.bottom))
|
35
|
-
#define GH_HIT_SLOP_INSET(key) (isnan(hitSlop.key) ? 0. : hitSlop.key)
|
36
|
-
|
37
|
-
CGRect GHHitSlopInsetRect(CGRect rect, RNGHHitSlop hitSlop) {
|
38
|
-
rect.origin.x -= GH_HIT_SLOP_INSET(left);
|
39
|
-
rect.origin.y -= GH_HIT_SLOP_INSET(top);
|
40
|
-
|
41
|
-
if (!isnan(hitSlop.width)) {
|
42
|
-
if (!isnan(hitSlop.right)) {
|
43
|
-
rect.origin.x = rect.size.width - hitSlop.width + GH_HIT_SLOP_INSET(right);
|
44
|
-
}
|
45
|
-
rect.size.width = hitSlop.width;
|
46
|
-
} else {
|
47
|
-
rect.size.width += (GH_HIT_SLOP_INSET(left) + GH_HIT_SLOP_INSET(right));
|
48
|
-
}
|
49
|
-
if (!isnan(hitSlop.height)) {
|
50
|
-
if (!isnan(hitSlop.bottom)) {
|
51
|
-
rect.origin.y = rect.size.height - hitSlop.height + GH_HIT_SLOP_INSET(bottom);
|
52
|
-
}
|
53
|
-
rect.size.height = hitSlop.height;
|
54
|
-
} else {
|
55
|
-
rect.size.height += (GH_HIT_SLOP_INSET(top) + GH_HIT_SLOP_INSET(bottom));
|
56
|
-
}
|
57
|
-
return rect;
|
58
|
-
}
|
59
|
-
|
60
|
-
|
61
|
-
@implementation GestureHandler {
|
62
|
-
NSArray<NSNumber *> *_handlersToWaitFor;
|
63
|
-
NSArray<NSNumber *> *_simultaneousHandlers;
|
64
|
-
RNGHHitSlop _hitSlop;
|
65
|
-
}
|
66
|
-
|
67
|
-
- (instancetype)initWithTag:(NSNumber *)tag
|
68
|
-
{
|
69
|
-
if ((self = [super init])) {
|
70
|
-
_tag = tag;
|
71
|
-
_lastState = GestureHandlerStateUndetermined;
|
72
|
-
_hitSlop = RNGHHitSlopEmpty;
|
73
|
-
}
|
74
|
-
return self;
|
75
|
-
}
|
76
|
-
|
77
|
-
- (void)configure:(NSDictionary *)config
|
78
|
-
{
|
79
|
-
_handlersToWaitFor = config[@"waitFor"];
|
80
|
-
_simultaneousHandlers = config[@"simultaneousHandlers"];
|
81
|
-
|
82
|
-
id prop = config[@"enabled"];
|
83
|
-
if (prop != nil) {
|
84
|
-
self.enabled = [prop boolValue];
|
85
|
-
} else {
|
86
|
-
self.enabled = YES;
|
87
|
-
}
|
88
|
-
|
89
|
-
prop = config[@"shouldCancelWhenOutside"];
|
90
|
-
if (prop != nil) {
|
91
|
-
_shouldCancelWhenOutside = [prop boolValue];
|
92
|
-
// } else {
|
93
|
-
// _shouldCancelWhenOutside = NO;
|
94
|
-
}
|
95
|
-
|
96
|
-
prop = config[@"hitSlop"];
|
97
|
-
if ([prop isKindOfClass:[NSNumber class]]) {
|
98
|
-
_hitSlop.left = _hitSlop.right = _hitSlop.top = _hitSlop.bottom = [prop doubleValue];
|
99
|
-
} else if (prop != nil) {
|
100
|
-
_hitSlop.left = _hitSlop.right = GH_HIT_SLOP_GET(@"horizontal");
|
101
|
-
_hitSlop.top = _hitSlop.bottom = GH_HIT_SLOP_GET(@"vertical");
|
102
|
-
_hitSlop.left = GH_HIT_SLOP_GET(@"left");
|
103
|
-
_hitSlop.right = GH_HIT_SLOP_GET(@"right");
|
104
|
-
_hitSlop.top = GH_HIT_SLOP_GET(@"top");
|
105
|
-
_hitSlop.bottom = GH_HIT_SLOP_GET(@"bottom");
|
106
|
-
_hitSlop.width = GH_HIT_SLOP_GET(@"width");
|
107
|
-
_hitSlop.height = GH_HIT_SLOP_GET(@"height");
|
108
|
-
if (isnan(_hitSlop.left) && isnan(_hitSlop.right) && !isnan(_hitSlop.width)) {
|
109
|
-
NSLog(@"When width is set one of left or right pads need to be defined");
|
110
|
-
}
|
111
|
-
if (!isnan(_hitSlop.width) && !isnan(_hitSlop.left) && !isnan(_hitSlop.right)) {
|
112
|
-
NSLog(@"Cannot have all of left, right and width defined");
|
113
|
-
}
|
114
|
-
if (isnan(_hitSlop.top) && isnan(_hitSlop.bottom) && !isnan(_hitSlop.height)) {
|
115
|
-
NSLog(@"When height is set one of top or bottom pads need to be defined");
|
116
|
-
}
|
117
|
-
if (!isnan(_hitSlop.height) && !isnan(_hitSlop.top) && !isnan(_hitSlop.bottom)) {
|
118
|
-
NSLog(@"Cannot have all of top, bottom and height defined");
|
119
|
-
}
|
120
|
-
}
|
121
|
-
}
|
122
|
-
|
123
|
-
- (void)setEnabled:(BOOL)enabled
|
124
|
-
{
|
125
|
-
_enabled = enabled;
|
126
|
-
self.recognizer.enabled = enabled;
|
127
|
-
}
|
128
|
-
- (BOOL)enabled
|
129
|
-
{
|
130
|
-
return _enabled;
|
131
|
-
}
|
132
|
-
|
133
|
-
- (void)bindToView:(UIView *)view
|
134
|
-
{
|
135
|
-
// view.userInteractionEnabled = YES;
|
136
|
-
self.recognizer.delegate = self;
|
137
|
-
[view addGestureRecognizer:self.recognizer];
|
138
|
-
}
|
139
|
-
|
140
|
-
- (void)unbindFromView
|
141
|
-
{
|
142
|
-
[self.recognizer.view removeGestureRecognizer:self.recognizer];
|
143
|
-
self.recognizer.delegate = nil;
|
144
|
-
}
|
145
|
-
|
146
|
-
- (NSMutableDictionary *)eventExtraData:(UIGestureRecognizer *)recognizer
|
147
|
-
{
|
148
|
-
CGPoint position = [recognizer locationInView:recognizer.view];
|
149
|
-
CGPoint absolutePosition = [recognizer locationInView:recognizer.view.window];
|
150
|
-
NSMutableDictionary* result = [NSMutableDictionary new];
|
151
|
-
NSUInteger numberOfTouches = recognizer.numberOfTouches;
|
152
|
-
[result setObject:@(numberOfTouches) forKey:@"numberOfPointers"];
|
153
|
-
[result setObject:@(position.x) forKey:@"x"];
|
154
|
-
[result setObject:@(position.y) forKey:@"y"];
|
155
|
-
[result setObject:@(absolutePosition.y) forKey:@"absoluteX"];
|
156
|
-
[result setObject:@(absolutePosition.y) forKey:@"absoluteY"];
|
157
|
-
NSMutableArray* positions = [NSMutableArray arrayWithCapacity:2*numberOfTouches];
|
158
|
-
for (NSUInteger i = 0; i <numberOfTouches; i++) {
|
159
|
-
CGPoint pos = [recognizer locationOfTouch:i inView:recognizer.view];
|
160
|
-
|
161
|
-
[positions insertObject:@(pos.x) atIndex:2*i];
|
162
|
-
[positions insertObject:@(pos.y) atIndex:2*i+1];
|
163
|
-
}
|
164
|
-
[result setObject:positions forKey:@"positions"];
|
165
|
-
return result;
|
166
|
-
}
|
167
|
-
|
168
|
-
- (void)handleGesture:(UIGestureRecognizer *)recognizer
|
169
|
-
{
|
170
|
-
NSMutableDictionary *eventData = [self eventExtraData:recognizer];
|
171
|
-
[self sendEventsInState:[self stateForRecognizer:recognizer] forView:recognizer.view withExtraData:eventData];
|
172
|
-
}
|
173
|
-
|
174
|
-
- (void)sendEventsInState:(GestureHandlerState)state
|
175
|
-
forView:(nonnull UIView *)view
|
176
|
-
withExtraData:(nullable NSDictionary *)extraData
|
177
|
-
{
|
178
|
-
if (state != _lastState) {
|
179
|
-
if (state == GestureHandlerStateEnd && _lastState != GestureHandlerStateActive) {
|
180
|
-
if (self.delegate) {
|
181
|
-
[self.delegate gestureHandler:self didChangeState:GestureHandlerStateActive prevState:_lastState extraData:extraData view:view];
|
182
|
-
}
|
183
|
-
_lastState = GestureHandlerStateActive;
|
184
|
-
}
|
185
|
-
if (self.delegate) {
|
186
|
-
[self.delegate gestureHandler:self didChangeState:state prevState:_lastState extraData:extraData view:view];
|
187
|
-
}
|
188
|
-
_lastState = state;
|
189
|
-
}
|
190
|
-
|
191
|
-
if (state == GestureHandlerStateActive) {
|
192
|
-
if (self.delegate) {
|
193
|
-
[self.delegate gestureHandler:self touchEventOnView:view state:state extraData:extraData];
|
194
|
-
}
|
195
|
-
}
|
196
|
-
}
|
197
|
-
|
198
|
-
- (GestureHandlerState)state
|
199
|
-
{
|
200
|
-
switch (_recognizer.state) {
|
201
|
-
case UIGestureRecognizerStateBegan:
|
202
|
-
case UIGestureRecognizerStatePossible:
|
203
|
-
return GestureHandlerStateBegan;
|
204
|
-
case UIGestureRecognizerStateEnded:
|
205
|
-
return GestureHandlerStateEnd;
|
206
|
-
case UIGestureRecognizerStateFailed:
|
207
|
-
return GestureHandlerStateFailed;
|
208
|
-
case UIGestureRecognizerStateCancelled:
|
209
|
-
return GestureHandlerStateCancelled;
|
210
|
-
case UIGestureRecognizerStateChanged:
|
211
|
-
return GestureHandlerStateActive;
|
212
|
-
}
|
213
|
-
return GestureHandlerStateUndetermined;
|
214
|
-
}
|
215
|
-
- (GestureHandlerState)stateForRecognizer:(UIGestureRecognizer*)recognizer
|
216
|
-
{
|
217
|
-
switch (recognizer.state) {
|
218
|
-
case UIGestureRecognizerStateBegan:
|
219
|
-
case UIGestureRecognizerStatePossible:
|
220
|
-
return GestureHandlerStateBegan;
|
221
|
-
case UIGestureRecognizerStateEnded:
|
222
|
-
return GestureHandlerStateEnd;
|
223
|
-
case UIGestureRecognizerStateFailed:
|
224
|
-
return GestureHandlerStateFailed;
|
225
|
-
case UIGestureRecognizerStateCancelled:
|
226
|
-
return GestureHandlerStateCancelled;
|
227
|
-
case UIGestureRecognizerStateChanged:
|
228
|
-
return GestureHandlerStateActive;
|
229
|
-
}
|
230
|
-
return GestureHandlerStateUndetermined;
|
231
|
-
}
|
232
|
-
|
233
|
-
#pragma mark UIGestureRecognizerDelegate
|
234
|
-
|
235
|
-
+ (GestureHandler *)findGestureHandlerByRecognizer:(UIGestureRecognizer *)recognizer
|
236
|
-
{
|
237
|
-
GestureHandler *handler = recognizer.gestureHandler;
|
238
|
-
if (handler != nil) {
|
239
|
-
return handler;
|
240
|
-
}
|
241
|
-
|
242
|
-
// We may try to extract "DummyGestureHandler" in case when "otherGestureRecognizer" belongs to
|
243
|
-
// a native view being wrapped with "NativeViewGestureHandler"
|
244
|
-
UIView *view = recognizer.view;
|
245
|
-
// while (reactView != nil && reactView.reactTag == nil) {
|
246
|
-
// reactView = reactView.superview;
|
247
|
-
// }
|
248
|
-
|
249
|
-
for (UIGestureRecognizer *recognizer in view.gestureRecognizers) {
|
250
|
-
if ([recognizer isKindOfClass:[DummyGestureRecognizer class]]) {
|
251
|
-
return recognizer.gestureHandler;
|
252
|
-
}
|
253
|
-
}
|
254
|
-
|
255
|
-
return nil;
|
256
|
-
}
|
257
|
-
|
258
|
-
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer
|
259
|
-
shouldBeRequiredToFailByGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
|
260
|
-
{
|
261
|
-
GestureHandler *handler = [GestureHandler findGestureHandlerByRecognizer:otherGestureRecognizer];
|
262
|
-
if ([handler isKindOfClass:[NativeViewGestureHandler class]]) {
|
263
|
-
for (NSNumber *handlerTag in handler->_handlersToWaitFor) {
|
264
|
-
if ([_tag isEqual:handlerTag]) {
|
265
|
-
return YES;
|
266
|
-
}
|
267
|
-
}
|
268
|
-
}
|
269
|
-
|
270
|
-
return NO;
|
271
|
-
}
|
272
|
-
|
273
|
-
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer
|
274
|
-
shouldRequireFailureOfGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
|
275
|
-
{
|
276
|
-
if ([_handlersToWaitFor count]) {
|
277
|
-
GestureHandler *handler = [GestureHandler findGestureHandlerByRecognizer:otherGestureRecognizer];
|
278
|
-
if (handler != nil) {
|
279
|
-
for (NSNumber *handlerTag in _handlersToWaitFor) {
|
280
|
-
if ([handler.tag isEqual:handlerTag]) {
|
281
|
-
return YES;
|
282
|
-
}
|
283
|
-
}
|
284
|
-
}
|
285
|
-
}
|
286
|
-
return NO;
|
287
|
-
}
|
288
|
-
|
289
|
-
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer
|
290
|
-
shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
|
291
|
-
{
|
292
|
-
if (gestureRecognizer.view == otherGestureRecognizer.view && [gestureRecognizer isKindOfClass:[UISwipeGestureRecognizer class]] && [otherGestureRecognizer isKindOfClass:[UISwipeGestureRecognizer class]]) {
|
293
|
-
return YES;
|
294
|
-
}
|
295
|
-
if (_recognizer.state == UIGestureRecognizerStateBegan && _recognizer.state == UIGestureRecognizerStatePossible) {
|
296
|
-
return YES;
|
297
|
-
}
|
298
|
-
if ([_simultaneousHandlers count]) {
|
299
|
-
GestureHandler *handler = [GestureHandler findGestureHandlerByRecognizer:otherGestureRecognizer];
|
300
|
-
if (handler != nil) {
|
301
|
-
for (NSNumber *handlerTag in _simultaneousHandlers) {
|
302
|
-
if ([handler.tag isEqual:handlerTag]) {
|
303
|
-
return YES;
|
304
|
-
}
|
305
|
-
}
|
306
|
-
}
|
307
|
-
}
|
308
|
-
return NO;
|
309
|
-
}
|
310
|
-
|
311
|
-
- (void)reset
|
312
|
-
{
|
313
|
-
_lastState = GestureHandlerStateUndetermined;
|
314
|
-
}
|
315
|
-
|
316
|
-
- (BOOL)containsPointInView
|
317
|
-
{
|
318
|
-
CGPoint pt = [_recognizer locationInView:_recognizer.view];
|
319
|
-
CGRect hitFrame = GHHitSlopInsetRect(_recognizer.view.bounds, _hitSlop);
|
320
|
-
return CGRectContainsPoint(hitFrame, pt);
|
321
|
-
}
|
322
|
-
|
323
|
-
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer
|
324
|
-
{
|
325
|
-
[self reset];
|
326
|
-
if (self.delegate && [self.delegate respondsToSelector:@selector(gestureHandler:shouldActivateForEvent:)]) {
|
327
|
-
if (![self.delegate gestureHandler:self shouldActivateForEvent:[self eventExtraData:gestureRecognizer]]) {
|
328
|
-
return FALSE;
|
329
|
-
}
|
330
|
-
}
|
331
|
-
return YES;
|
332
|
-
}
|
333
|
-
|
334
|
-
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
|
335
|
-
{
|
336
|
-
#if TARGET_IPHONE_SIMULATOR
|
337
|
-
// we get unwanted touch on simulator which messes everything
|
338
|
-
UIView* view = gestureRecognizer.view;
|
339
|
-
CGPoint location = [touch locationInView:gestureRecognizer.view];
|
340
|
-
if (touch.phase == UITouchPhaseBegan && location.x == 0 && round(location.y) == view.window.bounds.size.height) {
|
341
|
-
return NO;
|
342
|
-
}
|
343
|
-
#endif // TARGET_IPHONE_SIMULATOR
|
344
|
-
|
345
|
-
// If hitSlop is set we use it to determine if a given gesture recognizer should start processing
|
346
|
-
// touch stream. This only works for negative values of hitSlop as this method won't be triggered
|
347
|
-
// unless touch startes in the bounds of the attached view. To acheve similar effect with positive
|
348
|
-
// values of hitSlop one should set hitSlop for the underlying view. This limitation is due to the
|
349
|
-
// fact that hitTest method is only available at the level of UIView
|
350
|
-
if (GH_HIT_SLOP_IS_SET(_hitSlop)) {
|
351
|
-
CGPoint location = [touch locationInView:gestureRecognizer.view];
|
352
|
-
CGRect hitFrame = GHHitSlopInsetRect(gestureRecognizer.view.bounds, _hitSlop);
|
353
|
-
return CGRectContainsPoint(hitFrame, location);
|
354
|
-
}
|
355
|
-
return YES;
|
356
|
-
}
|
357
|
-
|
358
|
-
//- (void)sendTouchEvent:(GestureHandlerEvent *)event
|
359
|
-
//{
|
360
|
-
// // [_eventDispatcher sendEvent:event];
|
361
|
-
//}
|
362
|
-
//
|
363
|
-
//- (void)sendStateChangeEvent:(GestureHandlerStateChange *)event
|
364
|
-
//{
|
365
|
-
// // [_eventDispatcher sendEvent:event];
|
366
|
-
//}
|
367
|
-
|
368
|
-
|
369
|
-
@end
|
@@ -1,101 +0,0 @@
|
|
1
|
-
//
|
2
|
-
// GestureHandler.h
|
3
|
-
// GestureHandler
|
4
|
-
//
|
5
|
-
// Created by Martin Guillon on 6/5/19.
|
6
|
-
// Copyright © 2019 Stefan Dragnev. All rights reserved.
|
7
|
-
//
|
8
|
-
|
9
|
-
#import "GestureHandlerState.h"
|
10
|
-
#import "GestureHandlerDirection.h"
|
11
|
-
#import "GestureHandlerEvents.h"
|
12
|
-
|
13
|
-
#import <Foundation/Foundation.h>
|
14
|
-
#import <UIKit/UIKit.h>
|
15
|
-
|
16
|
-
#define VEC_LEN_SQ(pt) (pt.x * pt.x + pt.y * pt.y)
|
17
|
-
#define TEST_MIN_IF_NOT_NAN(value, limit) \
|
18
|
-
(!isnan(limit) && ((limit < 0 && value <= limit) || (limit >= 0 && value >= limit)))
|
19
|
-
|
20
|
-
#define TEST_MAX_IF_NOT_NAN(value, max) \
|
21
|
-
(!isnan(max) && ((max < 0 && value < max) || (max >= 0 && value > max)))
|
22
|
-
|
23
|
-
#define APPLY_PROP(recognizer, config, type, prop, propName) do { \
|
24
|
-
id value = config[propName]; \
|
25
|
-
if (value != nil) recognizer.prop = [value type]; \
|
26
|
-
} while(0)
|
27
|
-
|
28
|
-
#define APPLY_FLOAT_PROP(prop) do { APPLY_PROP(recognizer, config, floatValue, prop, @#prop); } while(0)
|
29
|
-
#define APPLY_INT_PROP(prop) do { APPLY_PROP(recognizer, config, integerValue, prop, @#prop); } while(0)
|
30
|
-
#define APPLY_NAMED_INT_PROP(prop, propName) do { APPLY_PROP(recognizer, config, integerValue, prop, propName); } while(0)
|
31
|
-
|
32
|
-
//@protocol GestureHandlerEventEmitter
|
33
|
-
//
|
34
|
-
//- (void)sendTouchEvent:(nonnull GestureHandlerEvent *)event;
|
35
|
-
//
|
36
|
-
//- (void)sendStateChangeEvent:(nonnull GestureHandlerStateChange *)event;
|
37
|
-
//
|
38
|
-
//@end
|
39
|
-
|
40
|
-
|
41
|
-
@protocol RootViewGestureRecognizerDelegate <UIGestureRecognizerDelegate>
|
42
|
-
|
43
|
-
@required
|
44
|
-
- (BOOL)gestureRecognizer:(nullable UIGestureRecognizer *)gestureRecognizer
|
45
|
-
didActivateInRootView:(nullable UIView *)rootView;
|
46
|
-
|
47
|
-
@end
|
48
|
-
|
49
|
-
|
50
|
-
@class GestureHandler;
|
51
|
-
@protocol GestureHandlerDelegate <NSObject>
|
52
|
-
|
53
|
-
@optional
|
54
|
-
- (BOOL)gestureHandler:(nullable GestureHandler *)gestureHandler shouldActivateForEvent:(nullable NSDictionary *)data;
|
55
|
-
|
56
|
-
@required
|
57
|
-
- (void)gestureHandler:(nullable GestureHandler *)gestureHandler
|
58
|
-
didChangeState:(GestureHandlerState)state prevState:(GestureHandlerState)state extraData:(nullable NSDictionary *)data view:(nullable UIView *)view;
|
59
|
-
|
60
|
-
@required
|
61
|
-
- (void)gestureHandler:(nullable GestureHandler *)gestureHandler
|
62
|
-
touchEventOnView:(nullable UIView *)view state:(GestureHandlerState)state extraData:(nullable NSDictionary *)data;
|
63
|
-
|
64
|
-
@end
|
65
|
-
|
66
|
-
@interface GestureHandler : NSObject <UIGestureRecognizerDelegate> {
|
67
|
-
|
68
|
-
@protected UIGestureRecognizer *_recognizer;
|
69
|
-
@protected GestureHandlerState _lastState;
|
70
|
-
|
71
|
-
}
|
72
|
-
|
73
|
-
+ (nullable GestureHandler *)findGestureHandlerByRecognizer:(nonnull UIGestureRecognizer *)recognizer;
|
74
|
-
|
75
|
-
- (nonnull instancetype)initWithTag:(nonnull NSNumber *)tag;
|
76
|
-
|
77
|
-
@property (nonatomic, readonly, nonnull) NSNumber *tag;
|
78
|
-
//@property (nonatomic, weak, nullable) id<GestureHandlerEventEmitter> emitter;
|
79
|
-
@property (nonatomic, readonly, nullable) UIGestureRecognizer *recognizer;
|
80
|
-
@property (nonatomic) BOOL enabled;
|
81
|
-
@property(nonatomic) BOOL shouldCancelWhenOutside;
|
82
|
-
@property (nullable, nonatomic, weak) id<GestureHandlerDelegate> delegate;
|
83
|
-
|
84
|
-
- (void)setEnabled:(BOOL)enabled;
|
85
|
-
- (void)setShouldCancelWhenOutside:(BOOL)value;
|
86
|
-
|
87
|
-
- (void)bindToView:(nonnull UIView *)view;
|
88
|
-
- (void)unbindFromView;
|
89
|
-
- (void)configure:(nullable NSDictionary *)config NS_REQUIRES_SUPER;
|
90
|
-
- (void)handleGesture:(nonnull id)recognizer;
|
91
|
-
- (BOOL)containsPointInView;
|
92
|
-
- (GestureHandlerState)state;
|
93
|
-
- (nullable NSMutableDictionary *)eventExtraData:(nonnull id)recognizer;
|
94
|
-
|
95
|
-
- (void)reset;
|
96
|
-
- (void)sendEventsInState:(GestureHandlerState)state
|
97
|
-
forView:(nonnull UIView *)view
|
98
|
-
withExtraData:(nullable NSDictionary*)extraData;
|
99
|
-
|
100
|
-
@end
|
101
|
-
|