react-native-gesture-handler 3.0.0-beta.3 → 3.0.0-beta.4
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/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandler.kt +42 -38
- package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerOrchestrator.kt +22 -4
- package/android/src/main/java/com/swmansion/gesturehandler/core/HoverGestureHandler.kt +3 -6
- package/android/src/main/java/com/swmansion/gesturehandler/core/ManualGestureHandler.kt +2 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/NativeViewGestureHandler.kt +63 -6
- package/android/src/main/java/com/swmansion/gesturehandler/core/OnJSResponderCancelListener.kt +6 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/PanGestureHandler.kt +2 -0
- package/android/src/main/java/com/swmansion/gesturehandler/core/PinchGestureHandler.kt +16 -6
- package/android/src/main/java/com/swmansion/gesturehandler/core/RotationGestureHandler.kt +17 -4
- package/android/src/main/java/com/swmansion/gesturehandler/core/ViewConfigurationHelper.kt +0 -1
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.kt +47 -6
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerInteractionManager.kt +1 -1
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootHelper.kt +18 -8
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootView.kt +15 -4
- package/android/src/main/java/com/swmansion/gesturehandler/react/RNViewConfigurationHelper.kt +0 -6
- package/apple/Handlers/RNForceTouchHandler.m +1 -1
- package/apple/Handlers/RNHoverHandler.m +11 -11
- package/apple/Handlers/RNLongPressHandler.m +2 -2
- package/apple/Handlers/RNManualHandler.m +5 -0
- package/apple/Handlers/RNNativeViewHandler.mm +114 -53
- package/apple/Handlers/RNPanHandler.m +7 -3
- package/apple/Handlers/RNPinchHandler.m +9 -3
- package/apple/Handlers/RNRotationHandler.m +7 -2
- package/apple/Handlers/RNTapHandler.m +1 -1
- package/apple/RNGestureHandler.h +18 -0
- package/apple/RNGestureHandler.mm +32 -6
- package/apple/RNGestureHandlerButton.h +8 -0
- package/apple/RNGestureHandlerButton.mm +102 -11
- package/apple/RNGestureHandlerButtonComponentView.mm +85 -4
- package/apple/RNGestureHandlerRegistry.h +0 -1
- package/apple/RNRootViewGestureRecognizer.m +4 -15
- package/lib/module/components/GestureButtons.js +8 -8
- package/lib/module/components/GestureButtons.js.map +1 -1
- package/lib/module/components/GestureHandlerButton.web.js +51 -9
- package/lib/module/components/GestureHandlerButton.web.js.map +1 -1
- package/lib/module/components/Pressable/Pressable.js +1 -1
- package/lib/module/components/Pressable/Pressable.js.map +1 -1
- package/lib/module/components/Pressable/stateDefinitions.js +2 -0
- package/lib/module/components/Pressable/stateDefinitions.js.map +1 -1
- package/lib/module/components/touchables/GenericTouchable.js +2 -6
- package/lib/module/components/touchables/GenericTouchable.js.map +1 -1
- package/lib/module/handlers/gestures/GestureDetector/utils.js +11 -1
- package/lib/module/handlers/gestures/GestureDetector/utils.js.map +1 -1
- package/lib/module/handlers/gestures/flingGesture.js +8 -0
- package/lib/module/handlers/gestures/flingGesture.js.map +1 -1
- package/lib/module/handlers/gestures/forceTouchGesture.js +3 -3
- package/lib/module/handlers/gestures/gesture.js +8 -0
- package/lib/module/handlers/gestures/gesture.js.map +1 -1
- package/lib/module/handlers/gestures/gestureComposition.js +28 -0
- package/lib/module/handlers/gestures/gestureComposition.js.map +1 -1
- package/lib/module/handlers/gestures/gestureObjects.js +27 -1
- package/lib/module/handlers/gestures/gestureObjects.js.map +1 -1
- package/lib/module/handlers/gestures/gestureStateManager.js +9 -0
- package/lib/module/handlers/gestures/gestureStateManager.js.map +1 -1
- package/lib/module/handlers/gestures/hoverGesture.js +8 -0
- package/lib/module/handlers/gestures/hoverGesture.js.map +1 -1
- package/lib/module/handlers/gestures/longPressGesture.js +8 -0
- package/lib/module/handlers/gestures/longPressGesture.js.map +1 -1
- package/lib/module/handlers/gestures/manualGesture.js +8 -0
- package/lib/module/handlers/gestures/manualGesture.js.map +1 -1
- package/lib/module/handlers/gestures/nativeGesture.js +8 -0
- package/lib/module/handlers/gestures/nativeGesture.js.map +1 -1
- package/lib/module/handlers/gestures/panGesture.js +13 -0
- package/lib/module/handlers/gestures/panGesture.js.map +1 -1
- package/lib/module/handlers/gestures/pinchGesture.js +13 -0
- package/lib/module/handlers/gestures/pinchGesture.js.map +1 -1
- package/lib/module/handlers/gestures/rotationGesture.js +8 -0
- package/lib/module/handlers/gestures/rotationGesture.js.map +1 -1
- package/lib/module/handlers/gestures/tapGesture.js +8 -0
- package/lib/module/handlers/gestures/tapGesture.js.map +1 -1
- package/lib/module/v3/components/GestureButtons.js +4 -4
- package/lib/module/v3/components/GestureButtons.js.map +1 -1
- package/lib/module/v3/components/Pressable.js +3 -2
- package/lib/module/v3/components/Pressable.js.map +1 -1
- package/lib/module/v3/components/Touchable/Touchable.js +67 -29
- package/lib/module/v3/components/Touchable/Touchable.js.map +1 -1
- package/lib/module/v3/detectors/HostGestureDetector.web.js +2 -0
- package/lib/module/v3/detectors/HostGestureDetector.web.js.map +1 -1
- package/lib/module/v3/detectors/VirtualDetector/VirtualDetector.js +2 -0
- package/lib/module/v3/detectors/VirtualDetector/VirtualDetector.js.map +1 -1
- package/lib/module/v3/detectors/useNativeGestureRole.js +6 -0
- package/lib/module/v3/detectors/useNativeGestureRole.js.map +1 -0
- package/lib/module/v3/detectors/useNativeGestureRole.web.js +27 -0
- package/lib/module/v3/detectors/useNativeGestureRole.web.js.map +1 -0
- package/lib/module/v3/hooks/callbacks/useReanimatedEventHandler.js +17 -2
- package/lib/module/v3/hooks/callbacks/useReanimatedEventHandler.js.map +1 -1
- package/lib/module/v3/hooks/gestures/fling/useFlingGesture.js +2 -1
- package/lib/module/v3/hooks/gestures/fling/useFlingGesture.js.map +1 -1
- package/lib/module/v3/hooks/gestures/hover/useHoverGesture.js +2 -1
- package/lib/module/v3/hooks/gestures/hover/useHoverGesture.js.map +1 -1
- package/lib/module/v3/hooks/gestures/longPress/useLongPressGesture.js +2 -1
- package/lib/module/v3/hooks/gestures/longPress/useLongPressGesture.js.map +1 -1
- package/lib/module/v3/hooks/gestures/manual/useManualGesture.js +2 -1
- package/lib/module/v3/hooks/gestures/manual/useManualGesture.js.map +1 -1
- package/lib/module/v3/hooks/gestures/native/NativeTypes.js +1 -1
- package/lib/module/v3/hooks/gestures/native/NativeTypes.js.map +1 -1
- package/lib/module/v3/hooks/gestures/native/useNativeGesture.js +2 -1
- package/lib/module/v3/hooks/gestures/native/useNativeGesture.js.map +1 -1
- package/lib/module/v3/hooks/gestures/pan/usePanGesture.js +2 -1
- package/lib/module/v3/hooks/gestures/pan/usePanGesture.js.map +1 -1
- package/lib/module/v3/hooks/gestures/pinch/usePinchGesture.js +2 -1
- package/lib/module/v3/hooks/gestures/pinch/usePinchGesture.js.map +1 -1
- package/lib/module/v3/hooks/gestures/rotation/useRotationGesture.js +2 -1
- package/lib/module/v3/hooks/gestures/rotation/useRotationGesture.js.map +1 -1
- package/lib/module/v3/hooks/gestures/tap/useTapGesture.js +2 -1
- package/lib/module/v3/hooks/gestures/tap/useTapGesture.js.map +1 -1
- package/lib/module/v3/hooks/useGesture.js +1 -4
- package/lib/module/v3/hooks/useGesture.js.map +1 -1
- package/lib/module/v3/hooks/utils/configUtils.js +7 -3
- package/lib/module/v3/hooks/utils/configUtils.js.map +1 -1
- package/lib/module/v3/hooks/utils/index.js +1 -1
- package/lib/module/v3/hooks/utils/index.js.map +1 -1
- package/lib/module/v3/hooks/utils/propsWhiteList.js +1 -1
- package/lib/module/v3/hooks/utils/propsWhiteList.js.map +1 -1
- package/lib/module/web/constants.js +1 -0
- package/lib/module/web/constants.js.map +1 -1
- package/lib/module/web/detectors/RotationGestureDetector.js +18 -5
- package/lib/module/web/detectors/RotationGestureDetector.js.map +1 -1
- package/lib/module/web/detectors/ScaleGestureDetector.js +9 -1
- package/lib/module/web/detectors/ScaleGestureDetector.js.map +1 -1
- package/lib/module/web/handlers/GestureHandler.js +25 -5
- package/lib/module/web/handlers/GestureHandler.js.map +1 -1
- package/lib/module/web/handlers/HoverGestureHandler.js +1 -4
- package/lib/module/web/handlers/HoverGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/ManualGestureHandler.js +1 -0
- package/lib/module/web/handlers/ManualGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/NativeViewGestureHandler.js +65 -17
- package/lib/module/web/handlers/NativeViewGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/PanGestureHandler.js +1 -0
- package/lib/module/web/handlers/PanGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/PinchGestureHandler.js +4 -6
- package/lib/module/web/handlers/PinchGestureHandler.js.map +1 -1
- package/lib/module/web/handlers/RotationGestureHandler.js +4 -3
- package/lib/module/web/handlers/RotationGestureHandler.js.map +1 -1
- package/lib/module/web/interfaces.js +6 -0
- package/lib/module/web/interfaces.js.map +1 -1
- package/lib/module/web/tools/GestureHandlerOrchestrator.js +8 -2
- package/lib/module/web/tools/GestureHandlerOrchestrator.js.map +1 -1
- package/lib/module/web/tools/GestureLifecycleEvents.js +10 -0
- package/lib/module/web/tools/GestureLifecycleEvents.js.map +1 -0
- package/lib/module/web/tools/PointerEventManager.js +9 -0
- package/lib/module/web/tools/PointerEventManager.js.map +1 -1
- package/lib/typescript/components/GestureButtons.d.ts.map +1 -1
- package/lib/typescript/components/GestureHandlerButton.web.d.ts +5 -1
- package/lib/typescript/components/GestureHandlerButton.web.d.ts.map +1 -1
- package/lib/typescript/components/Pressable/Pressable.d.ts.map +1 -1
- package/lib/typescript/components/Pressable/stateDefinitions.d.ts.map +1 -1
- package/lib/typescript/components/touchables/GenericTouchable.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/GestureDetector/utils.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/flingGesture.d.ts +6 -0
- package/lib/typescript/handlers/gestures/flingGesture.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/forceTouchGesture.d.ts +3 -3
- package/lib/typescript/handlers/gestures/gesture.d.ts +6 -0
- package/lib/typescript/handlers/gestures/gesture.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/gestureComposition.d.ts +21 -0
- package/lib/typescript/handlers/gestures/gestureComposition.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/gestureObjects.d.ts +27 -1
- package/lib/typescript/handlers/gestures/gestureObjects.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/gestureStateManager.d.ts +6 -0
- package/lib/typescript/handlers/gestures/gestureStateManager.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/hoverGesture.d.ts +6 -0
- package/lib/typescript/handlers/gestures/hoverGesture.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/longPressGesture.d.ts +6 -0
- package/lib/typescript/handlers/gestures/longPressGesture.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/manualGesture.d.ts +6 -0
- package/lib/typescript/handlers/gestures/manualGesture.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/nativeGesture.d.ts +6 -0
- package/lib/typescript/handlers/gestures/nativeGesture.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/panGesture.d.ts +9 -0
- package/lib/typescript/handlers/gestures/panGesture.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/pinchGesture.d.ts +9 -0
- package/lib/typescript/handlers/gestures/pinchGesture.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/rotationGesture.d.ts +6 -0
- package/lib/typescript/handlers/gestures/rotationGesture.d.ts.map +1 -1
- package/lib/typescript/handlers/gestures/tapGesture.d.ts +6 -0
- package/lib/typescript/handlers/gestures/tapGesture.d.ts.map +1 -1
- package/lib/typescript/v3/components/GestureButtons.d.ts +1 -0
- package/lib/typescript/v3/components/GestureButtons.d.ts.map +1 -1
- package/lib/typescript/v3/components/GestureComponents.d.ts +3 -0
- package/lib/typescript/v3/components/GestureComponents.d.ts.map +1 -1
- package/lib/typescript/v3/components/GestureComponents.web.d.ts +4 -0
- package/lib/typescript/v3/components/GestureComponents.web.d.ts.map +1 -1
- package/lib/typescript/v3/components/Pressable.d.ts.map +1 -1
- package/lib/typescript/v3/components/Touchable/Touchable.d.ts.map +1 -1
- package/lib/typescript/v3/components/Touchable/TouchableProps.d.ts +10 -1
- package/lib/typescript/v3/components/Touchable/TouchableProps.d.ts.map +1 -1
- package/lib/typescript/v3/detectors/HostGestureDetector.web.d.ts +1 -1
- package/lib/typescript/v3/detectors/HostGestureDetector.web.d.ts.map +1 -1
- package/lib/typescript/v3/detectors/VirtualDetector/VirtualDetector.d.ts.map +1 -1
- package/lib/typescript/v3/detectors/useNativeGestureRole.d.ts +3 -0
- package/lib/typescript/v3/detectors/useNativeGestureRole.d.ts.map +1 -0
- package/lib/typescript/v3/detectors/useNativeGestureRole.web.d.ts +3 -0
- package/lib/typescript/v3/detectors/useNativeGestureRole.web.d.ts.map +1 -0
- package/lib/typescript/v3/hooks/callbacks/useReanimatedEventHandler.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/gestures/fling/useFlingGesture.d.ts +1 -1
- package/lib/typescript/v3/hooks/gestures/fling/useFlingGesture.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/gestures/hover/useHoverGesture.d.ts +1 -1
- package/lib/typescript/v3/hooks/gestures/hover/useHoverGesture.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/gestures/longPress/useLongPressGesture.d.ts +1 -1
- package/lib/typescript/v3/hooks/gestures/longPress/useLongPressGesture.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/gestures/manual/useManualGesture.d.ts +1 -1
- package/lib/typescript/v3/hooks/gestures/manual/useManualGesture.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/gestures/native/NativeTypes.d.ts +7 -0
- package/lib/typescript/v3/hooks/gestures/native/NativeTypes.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/gestures/native/useNativeGesture.d.ts +1 -1
- package/lib/typescript/v3/hooks/gestures/native/useNativeGesture.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/gestures/pan/usePanGesture.d.ts +1 -1
- package/lib/typescript/v3/hooks/gestures/pan/usePanGesture.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/gestures/pinch/usePinchGesture.d.ts +1 -1
- package/lib/typescript/v3/hooks/gestures/pinch/usePinchGesture.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/gestures/rotation/useRotationGesture.d.ts +1 -1
- package/lib/typescript/v3/hooks/gestures/rotation/useRotationGesture.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/gestures/tap/useTapGesture.d.ts +1 -1
- package/lib/typescript/v3/hooks/gestures/tap/useTapGesture.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/useGesture.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/utils/configUtils.d.ts +2 -2
- package/lib/typescript/v3/hooks/utils/configUtils.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/utils/index.d.ts +1 -1
- package/lib/typescript/v3/hooks/utils/index.d.ts.map +1 -1
- package/lib/typescript/v3/hooks/utils/propsWhiteList.d.ts +2 -2
- package/lib/typescript/v3/hooks/utils/propsWhiteList.d.ts.map +1 -1
- package/lib/typescript/v3/types/ConfigTypes.d.ts +1 -0
- package/lib/typescript/v3/types/ConfigTypes.d.ts.map +1 -1
- package/lib/typescript/web/constants.d.ts +1 -0
- package/lib/typescript/web/constants.d.ts.map +1 -1
- package/lib/typescript/web/detectors/RotationGestureDetector.d.ts.map +1 -1
- package/lib/typescript/web/detectors/ScaleGestureDetector.d.ts.map +1 -1
- package/lib/typescript/web/handlers/GestureHandler.d.ts +8 -2
- package/lib/typescript/web/handlers/GestureHandler.d.ts.map +1 -1
- package/lib/typescript/web/handlers/HoverGestureHandler.d.ts +1 -1
- package/lib/typescript/web/handlers/HoverGestureHandler.d.ts.map +1 -1
- package/lib/typescript/web/handlers/IGestureHandler.d.ts +2 -0
- package/lib/typescript/web/handlers/IGestureHandler.d.ts.map +1 -1
- package/lib/typescript/web/handlers/ManualGestureHandler.d.ts +1 -0
- package/lib/typescript/web/handlers/ManualGestureHandler.d.ts.map +1 -1
- package/lib/typescript/web/handlers/NativeViewGestureHandler.d.ts +13 -3
- package/lib/typescript/web/handlers/NativeViewGestureHandler.d.ts.map +1 -1
- package/lib/typescript/web/handlers/PanGestureHandler.d.ts +1 -0
- package/lib/typescript/web/handlers/PanGestureHandler.d.ts.map +1 -1
- package/lib/typescript/web/handlers/PinchGestureHandler.d.ts +1 -0
- package/lib/typescript/web/handlers/PinchGestureHandler.d.ts.map +1 -1
- package/lib/typescript/web/handlers/RotationGestureHandler.d.ts +1 -0
- package/lib/typescript/web/handlers/RotationGestureHandler.d.ts.map +1 -1
- package/lib/typescript/web/interfaces.d.ts +6 -0
- package/lib/typescript/web/interfaces.d.ts.map +1 -1
- package/lib/typescript/web/tools/GestureHandlerOrchestrator.d.ts +1 -0
- package/lib/typescript/web/tools/GestureHandlerOrchestrator.d.ts.map +1 -1
- package/lib/typescript/web/tools/GestureLifecycleEvents.d.ts +7 -0
- package/lib/typescript/web/tools/GestureLifecycleEvents.d.ts.map +1 -0
- package/lib/typescript/web/tools/PointerEventManager.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/GestureButtons.tsx +10 -9
- package/src/components/GestureHandlerButton.web.tsx +94 -26
- package/src/components/Pressable/Pressable.tsx +2 -1
- package/src/components/Pressable/stateDefinitions.ts +3 -0
- package/src/components/touchables/GenericTouchable.tsx +2 -5
- package/src/handlers/gestures/GestureDetector/utils.ts +11 -1
- package/src/handlers/gestures/flingGesture.ts +6 -0
- package/src/handlers/gestures/forceTouchGesture.ts +3 -3
- package/src/handlers/gestures/gesture.ts +6 -0
- package/src/handlers/gestures/gestureComposition.ts +21 -0
- package/src/handlers/gestures/gestureObjects.ts +27 -1
- package/src/handlers/gestures/gestureStateManager.ts +6 -0
- package/src/handlers/gestures/hoverGesture.ts +6 -0
- package/src/handlers/gestures/longPressGesture.ts +6 -0
- package/src/handlers/gestures/manualGesture.ts +6 -0
- package/src/handlers/gestures/nativeGesture.ts +6 -0
- package/src/handlers/gestures/panGesture.ts +9 -0
- package/src/handlers/gestures/pinchGesture.ts +9 -0
- package/src/handlers/gestures/rotationGesture.ts +6 -0
- package/src/handlers/gestures/tapGesture.ts +6 -0
- package/src/v3/components/GestureButtons.tsx +5 -5
- package/src/v3/components/Pressable.tsx +2 -1
- package/src/v3/components/Touchable/Touchable.tsx +80 -47
- package/src/v3/components/Touchable/TouchableProps.ts +15 -1
- package/src/v3/detectors/HostGestureDetector.web.tsx +4 -1
- package/src/v3/detectors/VirtualDetector/VirtualDetector.tsx +3 -0
- package/src/v3/detectors/useNativeGestureRole.ts +8 -0
- package/src/v3/detectors/useNativeGestureRole.web.ts +42 -0
- package/src/v3/hooks/callbacks/useReanimatedEventHandler.ts +23 -7
- package/src/v3/hooks/gestures/fling/useFlingGesture.ts +5 -1
- package/src/v3/hooks/gestures/hover/useHoverGesture.ts +5 -1
- package/src/v3/hooks/gestures/longPress/useLongPressGesture.ts +3 -1
- package/src/v3/hooks/gestures/manual/useManualGesture.ts +5 -1
- package/src/v3/hooks/gestures/native/NativeTypes.ts +13 -1
- package/src/v3/hooks/gestures/native/useNativeGesture.ts +5 -1
- package/src/v3/hooks/gestures/pan/usePanGesture.ts +5 -1
- package/src/v3/hooks/gestures/pinch/usePinchGesture.ts +5 -1
- package/src/v3/hooks/gestures/rotation/useRotationGesture.ts +3 -1
- package/src/v3/hooks/gestures/tap/useTapGesture.ts +5 -1
- package/src/v3/hooks/useGesture.ts +0 -4
- package/src/v3/hooks/utils/configUtils.ts +16 -5
- package/src/v3/hooks/utils/index.ts +0 -1
- package/src/v3/hooks/utils/propsWhiteList.ts +1 -0
- package/src/v3/types/ConfigTypes.ts +1 -0
- package/src/web/constants.ts +1 -0
- package/src/web/detectors/RotationGestureDetector.ts +19 -5
- package/src/web/detectors/ScaleGestureDetector.ts +9 -3
- package/src/web/handlers/GestureHandler.ts +36 -6
- package/src/web/handlers/HoverGestureHandler.ts +2 -5
- package/src/web/handlers/IGestureHandler.ts +2 -0
- package/src/web/handlers/ManualGestureHandler.ts +2 -0
- package/src/web/handlers/NativeViewGestureHandler.ts +122 -19
- package/src/web/handlers/PanGestureHandler.ts +2 -0
- package/src/web/handlers/PinchGestureHandler.ts +5 -7
- package/src/web/handlers/RotationGestureHandler.ts +5 -5
- package/src/web/interfaces.ts +7 -0
- package/src/web/tools/GestureHandlerOrchestrator.ts +11 -3
- package/src/web/tools/GestureLifecycleEvents.ts +14 -0
- package/src/web/tools/PointerEventManager.ts +12 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IGestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/web/handlers/IGestureHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,WAAW,EACX,UAAU,EACX,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAE1D,MAAM,CAAC,OAAO,WAAW,eAAe;IACtC,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzD,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,KAAK,EAAE,KAAK,CAAC;IACb,uBAAuB,EAAE,OAAO,CAAC;IACjC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACjD,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IAC/C,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IAE7C,kBAAkB,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IAE7D,gBAAgB,EAAE,CAChB,WAAW,EAAE,WAAW,GAAG,SAAS,KACjC,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IAElC,oBAAoB,EAAE,MAAM,MAAM,EAAE,CAAC;IAErC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,GAAG,EAAE,MAAM,IAAI,CAAC;IAChB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,MAAM,EAAE,MAAM,IAAI,CAAC;IAEnB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IAEnB,2BAA2B,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC;IACnE,6BAA6B,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC;IACrE,6BAA6B,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC;IACrE,wBAAwB,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC;IAChE,8BAA8B,EAAE,MAAM,OAAO,CAAC;IAE9C,SAAS,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,KAAK,IAAI,CAAC;IAEtD,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,mBAAmB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IAEvD,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC;CAC1B"}
|
|
1
|
+
{"version":3,"file":"IGestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/web/handlers/IGestureHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import type { GestureHandlerDelegate } from '../tools/GestureHandlerDelegate';
|
|
|
3
3
|
import GestureHandler from './GestureHandler';
|
|
4
4
|
import type IGestureHandler from './IGestureHandler';
|
|
5
5
|
export default class ManualGestureHandler extends GestureHandler {
|
|
6
|
+
readonly isContinuous = true;
|
|
6
7
|
constructor(delegate: GestureHandlerDelegate<unknown, IGestureHandler>);
|
|
7
8
|
protected onPointerDown(event: AdaptedEvent): void;
|
|
8
9
|
protected onPointerAdd(event: AdaptedEvent): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ManualGestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/web/handlers/ManualGestureHandler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,eAAe,MAAM,mBAAmB,CAAC;AAErD,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,cAAc;
|
|
1
|
+
{"version":3,"file":"ManualGestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/web/handlers/ManualGestureHandler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,eAAe,MAAM,mBAAmB,CAAC;AAErD,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,cAAc;IAC9D,SAAyB,YAAY,QAAQ;gBAG3C,QAAQ,EAAE,sBAAsB,CAAC,OAAO,EAAE,eAAe,CAAC;cAMzC,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAMxC,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAKvC,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAKxC,oBAAoB,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAK/C,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAKtC,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;CAI9D"}
|
|
@@ -1,15 +1,20 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type ActionType } from '../../ActionType';
|
|
2
|
+
import type { NativeHandlerData } from '../../v3/hooks/gestures/native/NativeTypes';
|
|
3
|
+
import type { HandlerData } from '../../v3/types';
|
|
2
4
|
import type { AdaptedEvent, Config, PropsRef } from '../interfaces';
|
|
3
5
|
import type { GestureHandlerDelegate } from '../tools/GestureHandlerDelegate';
|
|
4
6
|
import GestureHandler from './GestureHandler';
|
|
5
7
|
import type IGestureHandler from './IGestureHandler';
|
|
6
8
|
export default class NativeViewGestureHandler extends GestureHandler {
|
|
7
|
-
|
|
9
|
+
readonly isContinuous = true;
|
|
10
|
+
private role;
|
|
8
11
|
private shouldActivateOnStart;
|
|
9
12
|
private disallowInterruption;
|
|
13
|
+
private yieldsToContinuousGestures;
|
|
10
14
|
private startX;
|
|
11
15
|
private startY;
|
|
12
16
|
private minDistSq;
|
|
17
|
+
private lastActiveHandlerData;
|
|
13
18
|
constructor(delegate: GestureHandlerDelegate<unknown, IGestureHandler>);
|
|
14
19
|
init(ref: number, propsRef: React.RefObject<PropsRef>, actionType: ActionType): void;
|
|
15
20
|
updateGestureConfig(config: Config): void;
|
|
@@ -23,10 +28,15 @@ export default class NativeViewGestureHandler extends GestureHandler {
|
|
|
23
28
|
protected onPointerRemove(event: AdaptedEvent): void;
|
|
24
29
|
private onUp;
|
|
25
30
|
shouldRecognizeSimultaneously(handler: IGestureHandler): boolean;
|
|
26
|
-
|
|
31
|
+
detach(): void;
|
|
32
|
+
shouldBeCancelledByOther(handler: IGestureHandler): boolean;
|
|
27
33
|
shouldAttachGestureToChildView(): boolean;
|
|
28
34
|
disallowsInterruption(): boolean;
|
|
29
35
|
isButton(): boolean;
|
|
36
|
+
shouldBeginWithRecordedHandlers(recorded: IGestureHandler[]): boolean;
|
|
37
|
+
protected onCancel(): void;
|
|
30
38
|
protected transformNativeEvent(): Record<string, unknown>;
|
|
39
|
+
protected shouldSuppressActiveUpdate(handlerData: HandlerData<NativeHandlerData>): boolean;
|
|
40
|
+
reset(): void;
|
|
31
41
|
}
|
|
32
42
|
//# sourceMappingURL=NativeViewGestureHandler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeViewGestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/web/handlers/NativeViewGestureHandler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"NativeViewGestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/web/handlers/NativeViewGestureHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,UAAU,EAA+B,MAAM,kBAAkB,CAAC;AAGhF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAMlD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEpE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAK9E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,eAAe,MAAM,mBAAmB,CAAC;AAErD,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,cAAc;IAClE,SAAyB,YAAY,QAAQ;IAC7C,OAAO,CAAC,IAAI,CAAkC;IAG9C,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,0BAA0B,CAAS;IAE3C,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,SAAS,CAA2C;IAE5D,OAAO,CAAC,qBAAqB,CAA+C;gBAG1E,QAAQ,EAAE,sBAAsB,CAAC,OAAO,EAAE,eAAe,CAAC;IAM5C,IAAI,CAClB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EACnC,UAAU,EAAE,UAAU,GACrB,IAAI;IA2BS,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAiBzD,OAAO,CAAC,iBAAiB;cAUN,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAMxC,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAM1D,OAAO,CAAC,gBAAgB;cA4BL,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAoBxC,cAAc,IAAI,IAAI;cAMtB,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAKtC,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAK7D,OAAO,CAAC,IAAI;IAmBI,6BAA6B,CAC3C,OAAO,EAAE,eAAe,GACvB,OAAO;IA+BM,MAAM,IAAI,IAAI;IAKd,wBAAwB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO;IAO3D,8BAA8B,IAAI,OAAO;IAIlD,qBAAqB,IAAI,OAAO;IAIhC,QAAQ,IAAI,OAAO;IAIV,+BAA+B,CAC7C,QAAQ,EAAE,eAAe,EAAE,GAC1B,OAAO;cAeS,QAAQ,IAAI,IAAI;cAQhB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;cAQ/C,0BAA0B,CAC3C,WAAW,EAAE,WAAW,CAAC,iBAAiB,CAAC,GAC1C,OAAO;IAWM,KAAK,IAAI,IAAI;CAI9B"}
|
|
@@ -4,6 +4,7 @@ import type { GestureHandlerDelegate } from '../tools/GestureHandlerDelegate';
|
|
|
4
4
|
import GestureHandler from './GestureHandler';
|
|
5
5
|
import type IGestureHandler from './IGestureHandler';
|
|
6
6
|
export default class PanGestureHandler extends GestureHandler {
|
|
7
|
+
readonly isContinuous = true;
|
|
7
8
|
velocityX: number;
|
|
8
9
|
velocityY: number;
|
|
9
10
|
private minDist?;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PanGestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/web/handlers/PanGestureHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAItE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,eAAe,MAAM,mBAAmB,CAAC;AAMrD,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,cAAc;
|
|
1
|
+
{"version":3,"file":"PanGestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/web/handlers/PanGestureHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAItE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,eAAe,MAAM,mBAAmB,CAAC;AAMrD,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,cAAc;IAC3D,SAAyB,YAAY,QAAQ;IAEtC,SAAS,SAAK;IACd,SAAS,SAAK;IAErB,OAAO,CAAC,OAAO,CAAC,CAAiC;IACjD,OAAO,CAAC,SAAS,CAAuB;IAExC,OAAO,CAAC,kBAAkB,CAA4B;IACtD,OAAO,CAAC,gBAAgB,CAA2B;IACnD,OAAO,CAAC,gBAAgB,CAA2B;IACnD,OAAO,CAAC,cAAc,CAA2B;IAEjD,OAAO,CAAC,kBAAkB,CAA2B;IACrD,OAAO,CAAC,gBAAgB,CAA2B;IACnD,OAAO,CAAC,gBAAgB,CAA2B;IACnD,OAAO,CAAC,cAAc,CAA2B;IAEjD,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,aAAa,CAA2B;IAEhD,OAAO,CAAC,WAAW,CAAwB;IAC3C,OAAO,CAAC,WAAW,CAAwB;IAE3C,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,KAAK,CAAK;IAElB,OAAO,CAAC,UAAU,CAAyB;IAE3C,OAAO,CAAC,sBAAsB,CAAK;IACnC,OAAO,CAAC,iBAAiB,CAAK;IAE9B,OAAO,CAAC,8BAA8B,CAAS;IAC/C,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,WAAW,CAA4B;IAE/C,OAAO,CAAC,2BAA2B,CAAS;gBAG1C,QAAQ,EAAE,sBAAsB,CAAC,OAAO,EAAE,eAAe,CAAC;IAM5C,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;cAoFtC,WAAW,IAAI,IAAI;cA4BnB,oBAAoB;;;;;;;IAcvC,OAAO,CAAC,eAAe;IAGvB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,cAAc;cAQH,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAmBxC,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAwBvC,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAwBtC,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAsB1C,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAYxC,oBAAoB,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAkBlE,OAAO,CAAC,gBAAgB;cAcL,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAsCrD,OAAO,CAAC,cAAc;IAqEtB,OAAO,CAAC,UAAU;IAqClB,OAAO,CAAC,QAAQ;IAuBhB,OAAO,CAAC,UAAU;IAUF,QAAQ,CAAC,KAAK,UAAQ,GAAG,IAAI;cAQ1B,QAAQ,IAAI,IAAI;cAIhB,OAAO,IAAI,IAAI;cAIf,aAAa,IAAI,IAAI;CAQzC"}
|
|
@@ -4,6 +4,7 @@ import type { GestureHandlerDelegate } from '../tools/GestureHandlerDelegate';
|
|
|
4
4
|
import GestureHandler from './GestureHandler';
|
|
5
5
|
import type IGestureHandler from './IGestureHandler';
|
|
6
6
|
export default class PinchGestureHandler extends GestureHandler {
|
|
7
|
+
readonly isContinuous = true;
|
|
7
8
|
private scale;
|
|
8
9
|
private velocity;
|
|
9
10
|
private startingSpan;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PinchGestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/web/handlers/PinchGestureHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAMnD,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,eAAe,MAAM,mBAAmB,CAAC;AAErD,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,cAAc;IAC7D,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,QAAQ,CAAK;IAErB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,QAAQ,CAAsB;IAEtC,OAAO,CAAC,qBAAqB,CA4B3B;IAEF,OAAO,CAAC,oBAAoB,CAE1B;gBAGA,QAAQ,EAAE,sBAAsB,CAAC,OAAO,EAAE,eAAe,CAAC;IAM5C,IAAI,CAClB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EACnC,UAAU,EAAE,UAAU;cAOL,oBAAoB;;;;;;cAcpB,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAKxC,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAOvC,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cActC,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"PinchGestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/web/handlers/PinchGestureHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAMnD,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,eAAe,MAAM,mBAAmB,CAAC;AAErD,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,cAAc;IAC7D,SAAyB,YAAY,QAAQ;IAE7C,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,QAAQ,CAAK;IAErB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,QAAQ,CAAsB;IAEtC,OAAO,CAAC,qBAAqB,CA4B3B;IAEF,OAAO,CAAC,oBAAoB,CAE1B;gBAGA,QAAQ,EAAE,sBAAsB,CAAC,OAAO,EAAE,eAAe,CAAC;IAM5C,IAAI,CAClB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EACnC,UAAU,EAAE,UAAU;cAOL,oBAAoB;;;;;;cAcpB,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAKxC,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAOvC,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cActC,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAM1C,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cASxC,oBAAoB,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAUlE,OAAO,CAAC,QAAQ;IASA,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI;cAQ5B,OAAO,IAAI,IAAI;cAIf,aAAa,IAAI,IAAI;CAOzC"}
|
|
@@ -4,6 +4,7 @@ import type { GestureHandlerDelegate } from '../tools/GestureHandlerDelegate';
|
|
|
4
4
|
import GestureHandler from './GestureHandler';
|
|
5
5
|
import type IGestureHandler from './IGestureHandler';
|
|
6
6
|
export default class RotationGestureHandler extends GestureHandler {
|
|
7
|
+
readonly isContinuous = true;
|
|
7
8
|
private rotation;
|
|
8
9
|
private velocity;
|
|
9
10
|
private cachedAnchorX;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RotationGestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/web/handlers/RotationGestureHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAKnD,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,eAAe,MAAM,mBAAmB,CAAC;AAIrD,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,cAAc;IAChE,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,QAAQ,CAAK;IAErB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,aAAa,CAAK;IAE1B,OAAO,CAAC,uBAAuB,CA4B7B;IAEF,OAAO,CAAC,uBAAuB,CAC6B;gBAG1D,QAAQ,EAAE,sBAAsB,CAAC,OAAO,EAAE,eAAe,CAAC;IAM5C,IAAI,CAClB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EACnC,UAAU,EAAE,UAAU,GACrB,IAAI;cAMY,oBAAoB;;;;;;IAWvC,OAAO,CAAC,SAAS;cAWE,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAKxC,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAQvC,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"RotationGestureHandler.d.ts","sourceRoot":"","sources":["../../../../src/web/handlers/RotationGestureHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAKnD,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,eAAe,MAAM,mBAAmB,CAAC;AAIrD,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,cAAc;IAChE,SAAyB,YAAY,QAAQ;IAE7C,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,QAAQ,CAAK;IAErB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,aAAa,CAAK;IAE1B,OAAO,CAAC,uBAAuB,CA4B7B;IAEF,OAAO,CAAC,uBAAuB,CAC6B;gBAG1D,QAAQ,EAAE,sBAAsB,CAAC,OAAO,EAAE,eAAe,CAAC;IAM5C,IAAI,CAClB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EACnC,UAAU,EAAE,UAAU,GACrB,IAAI;cAMY,oBAAoB;;;;;;IAWvC,OAAO,CAAC,SAAS;cAWE,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAKxC,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAQvC,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAexC,oBAAoB,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAe/C,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;cAMtC,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAM7D,SAAS,CAAC,QAAQ,IAAI,IAAI;cAQP,OAAO,IAAI,IAAI;CASnC"}
|
|
@@ -62,6 +62,7 @@ export interface Config extends Record<string, ConfigArgs> {
|
|
|
62
62
|
maxDeltaY?: number;
|
|
63
63
|
shouldActivateOnStart?: boolean;
|
|
64
64
|
disallowInterruption?: boolean;
|
|
65
|
+
yieldsToContinuousGestures?: boolean;
|
|
65
66
|
direction?: Directions;
|
|
66
67
|
enableTrackpadTwoFingerGesture?: boolean;
|
|
67
68
|
}
|
|
@@ -135,5 +136,10 @@ export type SVGRef = {
|
|
|
135
136
|
current: SVGElement;
|
|
136
137
|
};
|
|
137
138
|
};
|
|
139
|
+
export declare enum NativeGestureRole {
|
|
140
|
+
Button = "GestureHandlerButton",
|
|
141
|
+
Switch = "Switch",
|
|
142
|
+
ScrollView = "ScrollView"
|
|
143
|
+
}
|
|
138
144
|
export {};
|
|
139
145
|
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/web/interfaces.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/web/interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,7 @@ export default class GestureHandlerOrchestrator {
|
|
|
10
10
|
private constructor();
|
|
11
11
|
private scheduleFinishedHandlersCleanup;
|
|
12
12
|
private cleanHandler;
|
|
13
|
+
isHandlerRecorded(handler: IGestureHandler): boolean;
|
|
13
14
|
removeHandlerFromOrchestrator(handler: IGestureHandler): void;
|
|
14
15
|
private cleanupFinishedHandlers;
|
|
15
16
|
private hasOtherHandlerToWaitFor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GestureHandlerOrchestrator.d.ts","sourceRoot":"","sources":["../../../../src/web/tools/GestureHandlerOrchestrator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAC;AAG/D,MAAM,CAAC,OAAO,OAAO,0BAA0B;IAC7C,OAAO,CAAC,MAAM,CAAC,SAAS,CAA6B;IAErD,OAAO,CAAC,eAAe,CAAyB;IAChD,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,oBAAoB,CAA0B;IAEtD,OAAO,CAAC,uBAAuB,CAAK;IACpC,OAAO,CAAC,eAAe,CAAK;IAI5B,OAAO;IAEP,OAAO,CAAC,+BAA+B;IAQvC,OAAO,CAAC,YAAY;IAOb,6BAA6B,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAcpE,OAAO,CAAC,uBAAuB;IAiB/B,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,kCAAkC;IAa1C,OAAO,CAAC,WAAW;IAgCnB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,uBAAuB;IAoBxB,oBAAoB,CACzB,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,KAAK,EACf,QAAQ,EAAE,KAAK,EACf,cAAc,CAAC,EAAE,OAAO,GACvB,IAAI;IA8DP,OAAO,CAAC,UAAU;IAuClB,OAAO,CAAC,kBAAkB;IAYnB,yBAAyB,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"GestureHandlerOrchestrator.d.ts","sourceRoot":"","sources":["../../../../src/web/tools/GestureHandlerOrchestrator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAC;AAG/D,MAAM,CAAC,OAAO,OAAO,0BAA0B;IAC7C,OAAO,CAAC,MAAM,CAAC,SAAS,CAA6B;IAErD,OAAO,CAAC,eAAe,CAAyB;IAChD,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,oBAAoB,CAA0B;IAEtD,OAAO,CAAC,uBAAuB,CAAK;IACpC,OAAO,CAAC,eAAe,CAAK;IAI5B,OAAO;IAEP,OAAO,CAAC,+BAA+B;IAQvC,OAAO,CAAC,YAAY;IAOb,iBAAiB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO;IAIpD,6BAA6B,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAcpE,OAAO,CAAC,uBAAuB;IAiB/B,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,kCAAkC;IAa1C,OAAO,CAAC,WAAW;IAgCnB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,uBAAuB;IAoBxB,oBAAoB,CACzB,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,KAAK,EACf,QAAQ,EAAE,KAAK,EACf,cAAc,CAAC,EAAE,OAAO,GACvB,IAAI;IA8DP,OAAO,CAAC,UAAU;IAuClB,OAAO,CAAC,kBAAkB;IAYnB,yBAAyB,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAgBhE,OAAO,CAAC,yBAAyB;IAWjC,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,0BAA0B;IAyBlC,OAAO,CAAC,YAAY;IAuBpB,OAAO,CAAC,UAAU;IAYX,yBAAyB,CAAC,cAAc,EAAE,eAAe,GAAG,IAAI;IAwBvE,WAAkB,QAAQ,IAAI,0BAA0B,CAMvD;CACF"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const GestureLifecycleEvent: {
|
|
2
|
+
readonly Began: "gh:gestureBegan";
|
|
3
|
+
readonly Canceled: "gh:gestureCanceled";
|
|
4
|
+
};
|
|
5
|
+
export type GestureLifecycleEventName = (typeof GestureLifecycleEvent)[keyof typeof GestureLifecycleEvent];
|
|
6
|
+
export declare function dispatchGestureLifecycleEvent(view: HTMLElement | null | undefined, name: GestureLifecycleEventName): void;
|
|
7
|
+
//# sourceMappingURL=GestureLifecycleEvents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GestureLifecycleEvents.d.ts","sourceRoot":"","sources":["../../../../src/web/tools/GestureLifecycleEvents.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB;;;CAGxB,CAAC;AAEX,MAAM,MAAM,yBAAyB,GACnC,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,OAAO,qBAAqB,CAAC,CAAC;AAErE,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EACpC,IAAI,EAAE,yBAAyB,GAC9B,IAAI,CAEN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PointerEventManager.d.ts","sourceRoot":"","sources":["../../../../src/web/tools/PointerEventManager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAS,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAQ3C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAI1C,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,YAAY,CAAC,WAAW,CAAC;IACxE,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,qBAAqB,CAAU;gBAE3B,IAAI,EAAE,WAAW,EAAE,qBAAqB,EAAE,OAAO;IAW7D,OAAO,CAAC,mBAAmB,CAwBzB;IAEF,OAAO,CAAC,iBAAiB,CA4BvB;IAEF,OAAO,CAAC,mBAAmB,CAyDzB;IAEF,OAAO,CAAC,qBAAqB,CAO3B;IAEF,OAAO,CAAC,oBAAoB,CAI1B;IAEF,OAAO,CAAC,oBAAoB,
|
|
1
|
+
{"version":3,"file":"PointerEventManager.d.ts","sourceRoot":"","sources":["../../../../src/web/tools/PointerEventManager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAS,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAQ3C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAI1C,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,YAAY,CAAC,WAAW,CAAC;IACxE,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,qBAAqB,CAAU;gBAE3B,IAAI,EAAE,WAAW,EAAE,qBAAqB,EAAE,OAAO;IAW7D,OAAO,CAAC,mBAAmB,CAwBzB;IAEF,OAAO,CAAC,iBAAiB,CA4BvB;IAEF,OAAO,CAAC,mBAAmB,CAyDzB;IAEF,OAAO,CAAC,qBAAqB,CAO3B;IAEF,OAAO,CAAC,oBAAoB,CAI1B;IAEF,OAAO,CAAC,oBAAoB,CAgB1B;IAEF,OAAO,CAAC,0BAA0B,CAWhC;IAEK,iBAAiB,IAAI,IAAI;IAkBzB,mBAAmB,IAAI,IAAI;IAalC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,GAAG,YAAY;IAmB5D,YAAY,IAAI,IAAI;CAIrC"}
|
package/package.json
CHANGED
|
@@ -27,7 +27,7 @@ export const LegacyRawButton = createNativeWrapper<LegacyRawButtonProps>(
|
|
|
27
27
|
GestureHandlerButton as unknown as HostComponent<LegacyRawButtonProps>,
|
|
28
28
|
{
|
|
29
29
|
shouldCancelWhenOutside: false,
|
|
30
|
-
shouldActivateOnStart:
|
|
30
|
+
shouldActivateOnStart: Platform.OS === 'web',
|
|
31
31
|
}
|
|
32
32
|
);
|
|
33
33
|
|
|
@@ -36,13 +36,13 @@ class InnerBaseButton extends React.Component<BaseButtonWithRefProps> {
|
|
|
36
36
|
delayLongPress: 600,
|
|
37
37
|
};
|
|
38
38
|
|
|
39
|
-
private
|
|
39
|
+
private lastIsPressed: boolean;
|
|
40
40
|
private longPressTimeout: ReturnType<typeof setTimeout> | undefined;
|
|
41
41
|
private longPressDetected: boolean;
|
|
42
42
|
|
|
43
43
|
constructor(props: BaseButtonWithRefProps) {
|
|
44
44
|
super(props);
|
|
45
|
-
this.
|
|
45
|
+
this.lastIsPressed = false;
|
|
46
46
|
this.longPressDetected = false;
|
|
47
47
|
}
|
|
48
48
|
|
|
@@ -50,23 +50,24 @@ class InnerBaseButton extends React.Component<BaseButtonWithRefProps> {
|
|
|
50
50
|
nativeEvent,
|
|
51
51
|
}: HandlerStateChangeEvent<NativeViewGestureHandlerPayload>) => {
|
|
52
52
|
const { state, oldState, pointerInside } = nativeEvent;
|
|
53
|
-
const
|
|
53
|
+
const isPressed =
|
|
54
|
+
pointerInside && (state === State.BEGAN || state === State.ACTIVE);
|
|
54
55
|
|
|
55
|
-
if (
|
|
56
|
-
this.props.onActiveStateChange(
|
|
56
|
+
if (isPressed !== this.lastIsPressed && this.props.onActiveStateChange) {
|
|
57
|
+
this.props.onActiveStateChange(isPressed);
|
|
57
58
|
}
|
|
58
59
|
|
|
59
60
|
if (
|
|
60
61
|
!this.longPressDetected &&
|
|
61
62
|
oldState === State.ACTIVE &&
|
|
62
63
|
state !== State.CANCELLED &&
|
|
63
|
-
this.
|
|
64
|
+
this.lastIsPressed &&
|
|
64
65
|
this.props.onPress
|
|
65
66
|
) {
|
|
66
67
|
this.props.onPress(pointerInside);
|
|
67
68
|
}
|
|
68
69
|
|
|
69
|
-
if (!this.
|
|
70
|
+
if (!this.lastIsPressed && state === State.BEGAN && pointerInside) {
|
|
70
71
|
this.longPressDetected = false;
|
|
71
72
|
if (this.props.onLongPress) {
|
|
72
73
|
this.longPressTimeout = setTimeout(
|
|
@@ -93,7 +94,7 @@ class InnerBaseButton extends React.Component<BaseButtonWithRefProps> {
|
|
|
93
94
|
this.longPressTimeout = undefined;
|
|
94
95
|
}
|
|
95
96
|
|
|
96
|
-
this.
|
|
97
|
+
this.lastIsPressed = isPressed;
|
|
97
98
|
};
|
|
98
99
|
|
|
99
100
|
private onLongPress = () => {
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import type { ColorValue, ViewProps } from 'react-native';
|
|
2
|
+
import type { ColorValue, NativeSyntheticEvent, ViewProps } from 'react-native';
|
|
3
3
|
import { View } from 'react-native';
|
|
4
4
|
|
|
5
|
+
import { NativeGestureRole } from '../web/interfaces';
|
|
6
|
+
import { GestureLifecycleEvent } from '../web/tools/GestureLifecycleEvents';
|
|
7
|
+
|
|
5
8
|
type ButtonProps = ViewProps & {
|
|
6
9
|
ref?: React.Ref<React.ComponentRef<typeof View>>;
|
|
7
10
|
enabled?: boolean;
|
|
@@ -17,6 +20,7 @@ type ButtonProps = ViewProps & {
|
|
|
17
20
|
};
|
|
18
21
|
|
|
19
22
|
export const ButtonComponent = ({
|
|
23
|
+
ref: externalRef,
|
|
20
24
|
enabled = true,
|
|
21
25
|
pressAndHoldAnimationDuration: pressAndHoldAnimationDurationProp = -1,
|
|
22
26
|
tapAnimationDuration: tapAnimationDurationProp = 100,
|
|
@@ -46,17 +50,65 @@ export const ButtonComponent = ({
|
|
|
46
50
|
const pressOutTimer = React.useRef<ReturnType<typeof setTimeout> | null>(
|
|
47
51
|
null
|
|
48
52
|
);
|
|
53
|
+
const gestureEnabledRef = React.useRef(true);
|
|
54
|
+
const viewRef = React.useRef<HTMLElement | null>(null);
|
|
55
|
+
|
|
56
|
+
const setRef = React.useCallback(
|
|
57
|
+
(node: React.ComponentRef<typeof View> | null) => {
|
|
58
|
+
viewRef.current = node as unknown as HTMLElement | null;
|
|
59
|
+
if (typeof externalRef === 'function') {
|
|
60
|
+
externalRef(node);
|
|
61
|
+
} else if (externalRef != null) {
|
|
62
|
+
externalRef.current = node;
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
[externalRef]
|
|
66
|
+
);
|
|
49
67
|
|
|
50
68
|
React.useEffect(() => {
|
|
69
|
+
const node = viewRef.current;
|
|
70
|
+
|
|
71
|
+
const handleGestureBegan = () => {
|
|
72
|
+
gestureEnabledRef.current = true;
|
|
73
|
+
};
|
|
74
|
+
const handleGestureCanceled = () => {
|
|
75
|
+
gestureEnabledRef.current = false;
|
|
76
|
+
if (pressOutTimer.current != null) {
|
|
77
|
+
clearTimeout(pressOutTimer.current);
|
|
78
|
+
pressOutTimer.current = null;
|
|
79
|
+
}
|
|
80
|
+
pressInTimestamp.current = 0;
|
|
81
|
+
setPressed(false);
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
node?.addEventListener(GestureLifecycleEvent.Began, handleGestureBegan);
|
|
85
|
+
node?.addEventListener(
|
|
86
|
+
GestureLifecycleEvent.Canceled,
|
|
87
|
+
handleGestureCanceled
|
|
88
|
+
);
|
|
89
|
+
|
|
51
90
|
return () => {
|
|
91
|
+
node?.removeEventListener(
|
|
92
|
+
GestureLifecycleEvent.Began,
|
|
93
|
+
handleGestureBegan
|
|
94
|
+
);
|
|
95
|
+
node?.removeEventListener(
|
|
96
|
+
GestureLifecycleEvent.Canceled,
|
|
97
|
+
handleGestureCanceled
|
|
98
|
+
);
|
|
52
99
|
if (pressOutTimer.current != null) {
|
|
53
100
|
clearTimeout(pressOutTimer.current);
|
|
54
101
|
}
|
|
55
102
|
};
|
|
56
103
|
}, []);
|
|
57
104
|
|
|
58
|
-
const pressIn = React.useCallback(
|
|
59
|
-
|
|
105
|
+
const pressIn = React.useCallback(
|
|
106
|
+
(event: NativeSyntheticEvent<unknown>) => {
|
|
107
|
+
if (!enabled || !gestureEnabledRef.current) {
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
event.stopPropagation();
|
|
60
112
|
if (pressOutTimer.current != null) {
|
|
61
113
|
clearTimeout(pressOutTimer.current);
|
|
62
114
|
pressOutTimer.current = null;
|
|
@@ -64,33 +116,46 @@ export const ButtonComponent = ({
|
|
|
64
116
|
pressInTimestamp.current = performance.now();
|
|
65
117
|
setCurrentDuration(pressAndHoldAnimationDuration);
|
|
66
118
|
setPressed(true);
|
|
67
|
-
}
|
|
68
|
-
|
|
119
|
+
},
|
|
120
|
+
[enabled, pressAndHoldAnimationDuration]
|
|
121
|
+
);
|
|
69
122
|
|
|
70
|
-
const pressOut = React.useCallback(
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
123
|
+
const pressOut = React.useCallback(
|
|
124
|
+
(event: NativeSyntheticEvent<unknown>) => {
|
|
125
|
+
// Only release if a press-in was actually recorded — guards against
|
|
126
|
+
// stray pointer events and lets us complete the release cycle even if
|
|
127
|
+
// `enabled` flipped to false between press-in and press-out.
|
|
128
|
+
if (pressInTimestamp.current === 0 || !gestureEnabledRef.current) {
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
76
131
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
// elapsed * 2 to ensure there is at least half of the tapAnimationDuration left for the animation to play
|
|
81
|
-
} else if (elapsed * 2 >= tapAnimationDuration) {
|
|
82
|
-
setCurrentDuration(elapsed);
|
|
83
|
-
setPressed(false);
|
|
84
|
-
} else {
|
|
85
|
-
// Let the in-progress CSS press-in transition continue; schedule press-out after remaining time
|
|
86
|
-
const remaining = tapAnimationDuration - elapsed;
|
|
87
|
-
pressOutTimer.current = setTimeout(() => {
|
|
132
|
+
event.stopPropagation();
|
|
133
|
+
if (pressOutTimer.current != null) {
|
|
134
|
+
clearTimeout(pressOutTimer.current);
|
|
88
135
|
pressOutTimer.current = null;
|
|
89
|
-
|
|
136
|
+
}
|
|
137
|
+
const elapsed = performance.now() - pressInTimestamp.current;
|
|
138
|
+
pressInTimestamp.current = 0;
|
|
139
|
+
|
|
140
|
+
if (elapsed >= pressAndHoldAnimationDuration) {
|
|
141
|
+
setCurrentDuration(pressAndHoldAnimationDuration);
|
|
142
|
+
setPressed(false);
|
|
143
|
+
// elapsed * 2 to ensure there is at least half of the tapAnimationDuration left for the animation to play
|
|
144
|
+
} else if (elapsed * 2 >= tapAnimationDuration) {
|
|
145
|
+
setCurrentDuration(elapsed);
|
|
90
146
|
setPressed(false);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
|
|
147
|
+
} else {
|
|
148
|
+
// Let the in-progress CSS press-in transition continue; schedule press-out after remaining time
|
|
149
|
+
const remaining = tapAnimationDuration - elapsed;
|
|
150
|
+
pressOutTimer.current = setTimeout(() => {
|
|
151
|
+
pressOutTimer.current = null;
|
|
152
|
+
setCurrentDuration(tapAnimationDuration);
|
|
153
|
+
setPressed(false);
|
|
154
|
+
}, remaining);
|
|
155
|
+
}
|
|
156
|
+
},
|
|
157
|
+
[pressAndHoldAnimationDuration, tapAnimationDuration]
|
|
158
|
+
);
|
|
94
159
|
|
|
95
160
|
const currentUnderlayOpacity = pressed
|
|
96
161
|
? activeUnderlayOpacity
|
|
@@ -113,6 +178,7 @@ export const ButtonComponent = ({
|
|
|
113
178
|
|
|
114
179
|
return (
|
|
115
180
|
<View
|
|
181
|
+
ref={setRef}
|
|
116
182
|
accessibilityRole="button"
|
|
117
183
|
style={[
|
|
118
184
|
style,
|
|
@@ -151,4 +217,6 @@ export const ButtonComponent = ({
|
|
|
151
217
|
);
|
|
152
218
|
};
|
|
153
219
|
|
|
220
|
+
ButtonComponent.displayName = NativeGestureRole.Button;
|
|
221
|
+
|
|
154
222
|
export default ButtonComponent;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { Component } from 'react';
|
|
3
|
-
import { Animated
|
|
3
|
+
import { Animated } from 'react-native';
|
|
4
4
|
|
|
5
5
|
import type {
|
|
6
6
|
GestureEvent,
|
|
@@ -174,10 +174,7 @@ export default class GenericTouchable extends Component<
|
|
|
174
174
|
// Need to handle case with external cancellation (e.g. by ScrollView)
|
|
175
175
|
this.moveToState(TOUCHABLE_STATE.UNDETERMINED);
|
|
176
176
|
} else if (
|
|
177
|
-
|
|
178
|
-
// And Android "Active" state is achieving on first move of a finger, not on press in.
|
|
179
|
-
// On iOS event on "Began" is not delivered.
|
|
180
|
-
state === (Platform.OS !== 'android' ? State.ACTIVE : State.BEGAN) &&
|
|
177
|
+
state === State.BEGAN &&
|
|
181
178
|
this.STATE === TOUCHABLE_STATE.UNDETERMINED
|
|
182
179
|
) {
|
|
183
180
|
// Moving inside requires
|
|
@@ -36,6 +36,16 @@ export const ALLOWED_PROPS = [
|
|
|
36
36
|
...nativeViewGestureHandlerProps,
|
|
37
37
|
];
|
|
38
38
|
|
|
39
|
+
// In some environments (e.g. `Next.js`) Reanimated Babel plugin might not be used.
|
|
40
|
+
// In that case we would wrongly suggest to add `runOnJS` to gesture configuration, even if the user doesn't use worklets at all.
|
|
41
|
+
// To prevent this, we check whether the plugin is enabled by defining a worklet and checking if the `__workletHash` property is available.
|
|
42
|
+
function emptyWorklet() {
|
|
43
|
+
'worklet';
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// @ts-expect-error if `emptyWorklet` is a worklet, `__workletHash` will be available, if not then the check will return false.
|
|
47
|
+
const wasBabelPluginEnabled = emptyWorklet.__workletHash !== undefined;
|
|
48
|
+
|
|
39
49
|
function convertToHandlerTag(ref: GestureRef): number {
|
|
40
50
|
if (typeof ref === 'number') {
|
|
41
51
|
return ref;
|
|
@@ -105,7 +115,7 @@ export function checkGestureCallbacksForWorklets(gesture: GestureType) {
|
|
|
105
115
|
const areAllNotWorklets = !areSomeWorklets && areSomeNotWorklets;
|
|
106
116
|
// If none of the callbacks are worklets and the gesture is not explicitly marked with
|
|
107
117
|
// `.runOnJS(true)` show a warning
|
|
108
|
-
if (areAllNotWorklets && !isTestEnv()) {
|
|
118
|
+
if (areAllNotWorklets && wasBabelPluginEnabled && !isTestEnv()) {
|
|
109
119
|
console.warn(
|
|
110
120
|
tagMessage(
|
|
111
121
|
`None of the callbacks in the gesture are worklets. If you wish to run them on the JS thread use '.runOnJS(true)' modifier on the gesture to make this explicit. Otherwise, mark the callbacks as 'worklet' to run them on the UI thread.`
|
|
@@ -3,6 +3,9 @@ import type { FlingGestureHandlerEventPayload } from '../GestureHandlerEventPayl
|
|
|
3
3
|
import type { BaseGestureConfig } from './gesture';
|
|
4
4
|
import { BaseGesture } from './gesture';
|
|
5
5
|
|
|
6
|
+
/**
|
|
7
|
+
* @deprecated `FlingGesture` is deprecated and will be removed in the future. Please use `useFlingGesture` instead.
|
|
8
|
+
*/
|
|
6
9
|
export class FlingGesture extends BaseGesture<FlingGestureHandlerEventPayload> {
|
|
7
10
|
public override config: BaseGestureConfig & FlingGestureConfig = {};
|
|
8
11
|
|
|
@@ -34,4 +37,7 @@ export class FlingGesture extends BaseGesture<FlingGestureHandlerEventPayload> {
|
|
|
34
37
|
}
|
|
35
38
|
}
|
|
36
39
|
|
|
40
|
+
/**
|
|
41
|
+
* @deprecated `FlingGestureType` is deprecated and will be removed in the future. Please use `FlingGesture` instead.
|
|
42
|
+
*/
|
|
37
43
|
export type FlingGestureType = InstanceType<typeof FlingGesture>;
|
|
@@ -5,7 +5,7 @@ import type { BaseGestureConfig } from './gesture';
|
|
|
5
5
|
import { ContinousBaseGesture } from './gesture';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
|
-
* @deprecated
|
|
8
|
+
* @deprecated `ForceTouchGestureChangeEventPayload` is deprecated and will be removed in the future.
|
|
9
9
|
*/
|
|
10
10
|
export type ForceTouchGestureChangeEventPayload = {
|
|
11
11
|
forceChange: number;
|
|
@@ -31,7 +31,7 @@ function changeEventCalculator(
|
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
/**
|
|
34
|
-
* @deprecated
|
|
34
|
+
* @deprecated `ForceTouchGesture` is deprecated and will be removed in the future.
|
|
35
35
|
*/
|
|
36
36
|
export class ForceTouchGesture extends ContinousBaseGesture<
|
|
37
37
|
ForceTouchGestureHandlerEventPayload,
|
|
@@ -91,6 +91,6 @@ export class ForceTouchGesture extends ContinousBaseGesture<
|
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
/**
|
|
94
|
-
* @deprecated
|
|
94
|
+
* @deprecated `ForceTouchGestureType` is deprecated and will be removed in the future.
|
|
95
95
|
*/
|
|
96
96
|
export type ForceTouchGestureType = InstanceType<typeof ForceTouchGesture>;
|
|
@@ -22,6 +22,9 @@ import type {
|
|
|
22
22
|
import { getNextHandlerTag } from '../getNextHandlerTag';
|
|
23
23
|
import type { GestureStateManagerType } from './gestureStateManager';
|
|
24
24
|
|
|
25
|
+
/**
|
|
26
|
+
* @deprecated `GestureType` is deprecated and will be removed in the future. Please use `SingleGesture` instead.
|
|
27
|
+
*/
|
|
25
28
|
export type GestureType =
|
|
26
29
|
| BaseGesture<Record<string, unknown>>
|
|
27
30
|
| BaseGesture<Record<string, never>>
|
|
@@ -35,6 +38,9 @@ export type GestureType =
|
|
|
35
38
|
| BaseGesture<NativeViewGestureHandlerPayload>
|
|
36
39
|
| BaseGesture<HoverGestureHandlerEventPayload>;
|
|
37
40
|
|
|
41
|
+
/**
|
|
42
|
+
* @deprecated `GestureRef` is deprecated and will be removed in the future.
|
|
43
|
+
*/
|
|
38
44
|
export type GestureRef =
|
|
39
45
|
| number
|
|
40
46
|
| GestureType
|