@amazon-devices/react-native-gesture-handler 4.0.0 → 4.0.2
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/SystemModules/amzn__react-native-gesture-handler-4.modules.txt +3 -0
- package/SystemModules/amzn__react-native-gesture-handler-4.private.modules.txt +81 -35
- package/kepler-compatibility.json +3 -1
- package/lib/commonjs/RNGestureHandlerModule.kepler.js.map +1 -1
- package/lib/commonjs/index.js +0 -268
- package/lib/module/RNGestureHandlerModule.kepler.js.map +1 -1
- package/lib/typescript/RNGestureHandlerModule.kepler.d.ts.map +1 -1
- package/oss-attribution/attribution.txt +0 -0
- package/oss-attribution/licenseInfos.json +1 -0
- package/package.json +1 -1
- package/src/index.ts +0 -168
- package/README.md +0 -70
- package/SystemBundles/6340ec90c9b9f38941444b2ca176a58b9d8116a6cd975690f53747ed00595c90.bundle +0 -14669
- package/SystemBundles/6340ec90c9b9f38941444b2ca176a58b9d8116a6cd975690f53747ed00595c90.map +0 -5041
- package/lib/commonjs/ActionType.js +0 -15
- package/lib/commonjs/Directions.js +0 -31
- package/lib/commonjs/EnableNewWebImplementation.js +0 -40
- package/lib/commonjs/GestureHandlerRootViewContext.js +0 -10
- package/lib/commonjs/PlatformConstants.js +0 -9
- package/lib/commonjs/PlatformConstants.kepler.js +0 -12
- package/lib/commonjs/PlatformConstants.web.js +0 -12
- package/lib/commonjs/PointerType.js +0 -15
- package/lib/commonjs/RNGestureHandlerModule.js +0 -12
- package/lib/commonjs/RNGestureHandlerModule.kepler.js +0 -32
- package/lib/commonjs/RNGestureHandlerModule.web.js +0 -95
- package/lib/commonjs/RNGestureHandlerModule.windows.js +0 -56
- package/lib/commonjs/RNRenderer.js +0 -14
- package/lib/commonjs/RNRenderer.web.js +0 -10
- package/lib/commonjs/State.js +0 -19
- package/lib/commonjs/TouchEventType.js +0 -16
- package/lib/commonjs/components/DrawerLayout.js +0 -548
- package/lib/commonjs/components/GestureButtons.js +0 -212
- package/lib/commonjs/components/GestureButtonsProps.js +0 -6
- package/lib/commonjs/components/GestureComponents.js +0 -106
- package/lib/commonjs/components/GestureComponents.web.js +0 -39
- package/lib/commonjs/components/GestureHandlerButton.js +0 -10
- package/lib/commonjs/components/GestureHandlerButton.web.js +0 -16
- package/lib/commonjs/components/GestureHandlerRootView.android.js +0 -36
- package/lib/commonjs/components/GestureHandlerRootView.js +0 -35
- package/lib/commonjs/components/GestureHandlerRootView.kepler.js +0 -21
- package/lib/commonjs/components/GestureHandlerRootView.web.js +0 -30
- package/lib/commonjs/components/Pressable/Pressable.js +0 -274
- package/lib/commonjs/components/Pressable/PressableProps.js +0 -6
- package/lib/commonjs/components/Pressable/StateMachine.js +0 -44
- package/lib/commonjs/components/Pressable/index.js +0 -14
- package/lib/commonjs/components/Pressable/stateDefinitions.js +0 -88
- package/lib/commonjs/components/Pressable/utils.js +0 -92
- package/lib/commonjs/components/ReanimatedDrawerLayout.js +0 -357
- package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeable.js +0 -337
- package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js +0 -12
- package/lib/commonjs/components/ReanimatedSwipeable/index.js +0 -21
- package/lib/commonjs/components/Swipeable.js +0 -370
- package/lib/commonjs/components/Text.js +0 -60
- package/lib/commonjs/components/gestureHandlerRootHOC.js +0 -37
- package/lib/commonjs/components/touchables/ExtraButtonProps.js +0 -2
- package/lib/commonjs/components/touchables/GenericTouchable.js +0 -245
- package/lib/commonjs/components/touchables/GenericTouchableProps.js +0 -6
- package/lib/commonjs/components/touchables/TouchableHighlight.js +0 -93
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js +0 -84
- package/lib/commonjs/components/touchables/TouchableNativeFeedback.js +0 -13
- package/lib/commonjs/components/touchables/TouchableNativeFeedbackProps.js +0 -6
- package/lib/commonjs/components/touchables/TouchableOpacity.js +0 -65
- package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js +0 -33
- package/lib/commonjs/components/touchables/index.js +0 -35
- package/lib/commonjs/components/utils.js +0 -17
- package/lib/commonjs/findNodeHandle.js +0 -9
- package/lib/commonjs/findNodeHandle.web.js +0 -39
- package/lib/commonjs/getShadowNodeFromRef.js +0 -51
- package/lib/commonjs/getShadowNodeFromRef.web.js +0 -14
- package/lib/commonjs/ghQueueMicrotask.js +0 -10
- package/lib/commonjs/handlers/FlingGestureHandler.js +0 -31
- package/lib/commonjs/handlers/ForceTouchGestureHandler.js +0 -46
- package/lib/commonjs/handlers/GestureHandlerEventPayload.js +0 -6
- package/lib/commonjs/handlers/LongPressGestureHandler.js +0 -33
- package/lib/commonjs/handlers/NativeViewGestureHandler.js +0 -32
- package/lib/commonjs/handlers/PanGestureHandler.js +0 -112
- package/lib/commonjs/handlers/PinchGestureHandler.js +0 -29
- package/lib/commonjs/handlers/PressabilityDebugView.js +0 -13
- package/lib/commonjs/handlers/PressabilityDebugView.web.js +0 -11
- package/lib/commonjs/handlers/RotationGestureHandler.js +0 -29
- package/lib/commonjs/handlers/TapGestureHandler.js +0 -33
- package/lib/commonjs/handlers/createHandler.js +0 -405
- package/lib/commonjs/handlers/createNativeWrapper.js +0 -77
- package/lib/commonjs/handlers/customDirectEventTypes.js +0 -13
- package/lib/commonjs/handlers/customDirectEventTypes.web.js +0 -10
- package/lib/commonjs/handlers/gestureHandlerCommon.js +0 -27
- package/lib/commonjs/handlers/gestureHandlerTypesCompat.js +0 -6
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.js +0 -32
- package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.web.js +0 -41
- package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js +0 -67
- package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js +0 -20
- package/lib/commonjs/handlers/gestures/GestureDetector/index.js +0 -125
- package/lib/commonjs/handlers/gestures/GestureDetector/needsToReattach.js +0 -22
- package/lib/commonjs/handlers/gestures/GestureDetector/types.js +0 -6
- package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js +0 -66
- package/lib/commonjs/handlers/gestures/GestureDetector/useAnimatedGesture.js +0 -143
- package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js +0 -47
- package/lib/commonjs/handlers/gestures/GestureDetector/useMountReactions.js +0 -41
- package/lib/commonjs/handlers/gestures/GestureDetector/useViewRefHandler.js +0 -45
- package/lib/commonjs/handlers/gestures/GestureDetector/utils.js +0 -143
- package/lib/commonjs/handlers/gestures/eventReceiver.js +0 -117
- package/lib/commonjs/handlers/gestures/flingGesture.js +0 -37
- package/lib/commonjs/handlers/gestures/forceTouchGesture.js +0 -80
- package/lib/commonjs/handlers/gestures/gesture.js +0 -338
- package/lib/commonjs/handlers/gestures/gestureComposition.js +0 -90
- package/lib/commonjs/handlers/gestures/gestureObjects.js +0 -132
- package/lib/commonjs/handlers/gestures/gestureStateManager.js +0 -70
- package/lib/commonjs/handlers/gestures/gestureStateManager.web.js +0 -28
- package/lib/commonjs/handlers/gestures/hoverGesture.js +0 -57
- package/lib/commonjs/handlers/gestures/longPressGesture.js +0 -46
- package/lib/commonjs/handlers/gestures/manualGesture.js +0 -25
- package/lib/commonjs/handlers/gestures/nativeGesture.js +0 -34
- package/lib/commonjs/handlers/gestures/panGesture.js +0 -197
- package/lib/commonjs/handlers/gestures/pinchGesture.js +0 -38
- package/lib/commonjs/handlers/gestures/reanimatedWrapper.js +0 -29
- package/lib/commonjs/handlers/gestures/rotationGesture.js +0 -38
- package/lib/commonjs/handlers/gestures/tapGesture.js +0 -87
- package/lib/commonjs/handlers/getNextHandlerTag.js +0 -11
- package/lib/commonjs/handlers/handlersRegistry.js +0 -50
- package/lib/commonjs/handlers/utils.js +0 -69
- package/lib/commonjs/init.js +0 -25
- package/lib/commonjs/jestUtils/index.js +0 -19
- package/lib/commonjs/jestUtils/jestUtils.js +0 -316
- package/lib/commonjs/mocks/Pressable.js +0 -13
- package/lib/commonjs/mocks/mocks.js +0 -70
- package/lib/commonjs/mocks.js +0 -61
- package/lib/commonjs/mountRegistry.js +0 -37
- package/lib/commonjs/specs/NativeRNGestureHandlerModule.js +0 -9
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.kepler.js +0 -20
- package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.ts +0 -24
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.kepler.js +0 -17
- package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -7
- package/lib/commonjs/typeUtils.js +0 -2
- package/lib/commonjs/utils.js +0 -95
- package/lib/commonjs/web/Gestures.js +0 -48
- package/lib/commonjs/web/constants.js +0 -9
- package/lib/commonjs/web/detectors/RotationGestureDetector.js +0 -124
- package/lib/commonjs/web/detectors/ScaleGestureDetector.js +0 -111
- package/lib/commonjs/web/handlers/FlingGestureHandler.js +0 -143
- package/lib/commonjs/web/handlers/GestureHandler.js +0 -689
- package/lib/commonjs/web/handlers/HoverGestureHandler.js +0 -45
- package/lib/commonjs/web/handlers/IGestureHandler.js +0 -2
- package/lib/commonjs/web/handlers/LongPressGestureHandler.js +0 -146
- package/lib/commonjs/web/handlers/ManualGestureHandler.js +0 -38
- package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +0 -141
- package/lib/commonjs/web/handlers/PanGestureHandler.js +0 -399
- package/lib/commonjs/web/handlers/PinchGestureHandler.js +0 -122
- package/lib/commonjs/web/handlers/RotationGestureHandler.js +0 -129
- package/lib/commonjs/web/handlers/TapGestureHandler.js +0 -215
- package/lib/commonjs/web/interfaces.js +0 -32
- package/lib/commonjs/web/tools/CircularBuffer.js +0 -40
- package/lib/commonjs/web/tools/EventManager.js +0 -94
- package/lib/commonjs/web/tools/GestureHandlerDelegate.js +0 -6
- package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js +0 -267
- package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js +0 -165
- package/lib/commonjs/web/tools/InteractionManager.js +0 -96
- package/lib/commonjs/web/tools/KeyboardEventManager.js +0 -108
- package/lib/commonjs/web/tools/LeastSquareSolver.js +0 -159
- package/lib/commonjs/web/tools/NodeManager.js +0 -39
- package/lib/commonjs/web/tools/PointerEventManager.js +0 -189
- package/lib/commonjs/web/tools/PointerTracker.js +0 -192
- package/lib/commonjs/web/tools/Vector.js +0 -37
- package/lib/commonjs/web/tools/VelocityTracker.js +0 -85
- package/lib/commonjs/web/tools/WheelEventManager.js +0 -55
- package/lib/commonjs/web/utils.js +0 -235
- package/lib/commonjs/web_hammer/DiscreteGestureHandler.js +0 -93
- package/lib/commonjs/web_hammer/DraggingGestureHandler.js +0 -43
- package/lib/commonjs/web_hammer/Errors.js +0 -13
- package/lib/commonjs/web_hammer/FlingGestureHandler.js +0 -139
- package/lib/commonjs/web_hammer/GestureHandler.js +0 -484
- package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js +0 -45
- package/lib/commonjs/web_hammer/LongPressGestureHandler.js +0 -57
- package/lib/commonjs/web_hammer/NativeViewGestureHandler.js +0 -57
- package/lib/commonjs/web_hammer/NodeManager.js +0 -41
- package/lib/commonjs/web_hammer/PanGestureHandler.js +0 -167
- package/lib/commonjs/web_hammer/PinchGestureHandler.js +0 -31
- package/lib/commonjs/web_hammer/PressGestureHandler.js +0 -153
- package/lib/commonjs/web_hammer/RotationGestureHandler.js +0 -32
- package/lib/commonjs/web_hammer/TapGestureHandler.js +0 -165
- package/lib/commonjs/web_hammer/constants.js +0 -51
- package/lib/commonjs/web_hammer/utils.js +0 -32
- package/lib/module/ActionType.js +0 -11
- package/lib/module/Directions.js +0 -27
- package/lib/module/EnableNewWebImplementation.js +0 -34
- package/lib/module/GestureHandlerRootViewContext.js +0 -5
- package/lib/module/PlatformConstants.js +0 -5
- package/lib/module/PlatformConstants.kepler.js +0 -8
- package/lib/module/PlatformConstants.web.js +0 -8
- package/lib/module/PointerType.js +0 -11
- package/lib/module/RNGestureHandlerModule.js +0 -8
- package/lib/module/RNGestureHandlerModule.kepler.js +0 -26
- package/lib/module/RNGestureHandlerModule.web.js +0 -90
- package/lib/module/RNGestureHandlerModule.windows.js +0 -50
- package/lib/module/RNRenderer.js +0 -6
- package/lib/module/RNRenderer.web.js +0 -6
- package/lib/module/State.js +0 -15
- package/lib/module/TouchEventType.js +0 -12
- package/lib/module/components/DrawerLayout.js +0 -541
- package/lib/module/components/GestureButtons.js +0 -200
- package/lib/module/components/GestureButtonsProps.js +0 -4
- package/lib/module/components/GestureComponents.js +0 -100
- package/lib/module/components/GestureComponents.web.js +0 -32
- package/lib/module/components/GestureHandlerButton.js +0 -5
- package/lib/module/components/GestureHandlerButton.web.js +0 -11
- package/lib/module/components/GestureHandlerRootView.android.js +0 -30
- package/lib/module/components/GestureHandlerRootView.js +0 -29
- package/lib/module/components/GestureHandlerRootView.kepler.js +0 -15
- package/lib/module/components/GestureHandlerRootView.web.js +0 -24
- package/lib/module/components/Pressable/Pressable.js +0 -268
- package/lib/module/components/Pressable/PressableProps.js +0 -4
- package/lib/module/components/Pressable/StateMachine.js +0 -40
- package/lib/module/components/Pressable/index.js +0 -4
- package/lib/module/components/Pressable/stateDefinitions.js +0 -83
- package/lib/module/components/Pressable/utils.js +0 -84
- package/lib/module/components/ReanimatedDrawerLayout.js +0 -352
- package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeable.js +0 -332
- package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js +0 -8
- package/lib/module/components/ReanimatedSwipeable/index.js +0 -5
- package/lib/module/components/Swipeable.js +0 -364
- package/lib/module/components/Text.js +0 -55
- package/lib/module/components/gestureHandlerRootHOC.js +0 -33
- package/lib/module/components/touchables/ExtraButtonProps.js +0 -2
- package/lib/module/components/touchables/GenericTouchable.js +0 -239
- package/lib/module/components/touchables/GenericTouchableProps.js +0 -4
- package/lib/module/components/touchables/TouchableHighlight.js +0 -87
- package/lib/module/components/touchables/TouchableNativeFeedback.android.js +0 -77
- package/lib/module/components/touchables/TouchableNativeFeedback.js +0 -10
- package/lib/module/components/touchables/TouchableNativeFeedbackProps.js +0 -4
- package/lib/module/components/touchables/TouchableOpacity.js +0 -59
- package/lib/module/components/touchables/TouchableWithoutFeedback.js +0 -27
- package/lib/module/components/touchables/index.js +0 -7
- package/lib/module/components/utils.js +0 -13
- package/lib/module/findNodeHandle.js +0 -5
- package/lib/module/findNodeHandle.web.js +0 -35
- package/lib/module/getShadowNodeFromRef.js +0 -47
- package/lib/module/getShadowNodeFromRef.web.js +0 -10
- package/lib/module/ghQueueMicrotask.js +0 -6
- package/lib/module/handlers/FlingGestureHandler.js +0 -26
- package/lib/module/handlers/ForceTouchGestureHandler.js +0 -41
- package/lib/module/handlers/GestureHandlerEventPayload.js +0 -4
- package/lib/module/handlers/LongPressGestureHandler.js +0 -28
- package/lib/module/handlers/NativeViewGestureHandler.js +0 -27
- package/lib/module/handlers/PanGestureHandler.js +0 -105
- package/lib/module/handlers/PinchGestureHandler.js +0 -25
- package/lib/module/handlers/PressabilityDebugView.js +0 -5
- package/lib/module/handlers/PressabilityDebugView.web.js +0 -7
- package/lib/module/handlers/RotationGestureHandler.js +0 -25
- package/lib/module/handlers/TapGestureHandler.js +0 -28
- package/lib/module/handlers/createHandler.js +0 -399
- package/lib/module/handlers/createNativeWrapper.js +0 -74
- package/lib/module/handlers/customDirectEventTypes.js +0 -5
- package/lib/module/handlers/customDirectEventTypes.web.js +0 -7
- package/lib/module/handlers/gestureHandlerCommon.js +0 -26
- package/lib/module/handlers/gestureHandlerTypesCompat.js +0 -4
- package/lib/module/handlers/gestures/GestureDetector/Wrap.js +0 -26
- package/lib/module/handlers/gestures/GestureDetector/Wrap.web.js +0 -36
- package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js +0 -62
- package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js +0 -15
- package/lib/module/handlers/gestures/GestureDetector/index.js +0 -117
- package/lib/module/handlers/gestures/GestureDetector/needsToReattach.js +0 -18
- package/lib/module/handlers/gestures/GestureDetector/types.js +0 -4
- package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js +0 -61
- package/lib/module/handlers/gestures/GestureDetector/useAnimatedGesture.js +0 -139
- package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js +0 -43
- package/lib/module/handlers/gestures/GestureDetector/useMountReactions.js +0 -37
- package/lib/module/handlers/gestures/GestureDetector/useViewRefHandler.js +0 -40
- package/lib/module/handlers/gestures/GestureDetector/utils.js +0 -134
- package/lib/module/handlers/gestures/eventReceiver.js +0 -110
- package/lib/module/handlers/gestures/flingGesture.js +0 -32
- package/lib/module/handlers/gestures/forceTouchGesture.js +0 -76
- package/lib/module/handlers/gestures/gesture.js +0 -332
- package/lib/module/handlers/gestures/gestureComposition.js +0 -83
- package/lib/module/handlers/gestures/gestureObjects.js +0 -129
- package/lib/module/handlers/gestures/gestureStateManager.js +0 -66
- package/lib/module/handlers/gestures/gestureStateManager.web.js +0 -23
- package/lib/module/handlers/gestures/hoverGesture.js +0 -52
- package/lib/module/handlers/gestures/longPressGesture.js +0 -41
- package/lib/module/handlers/gestures/manualGesture.js +0 -20
- package/lib/module/handlers/gestures/nativeGesture.js +0 -29
- package/lib/module/handlers/gestures/panGesture.js +0 -192
- package/lib/module/handlers/gestures/pinchGesture.js +0 -33
- package/lib/module/handlers/gestures/reanimatedWrapper.js +0 -26
- package/lib/module/handlers/gestures/rotationGesture.js +0 -33
- package/lib/module/handlers/gestures/tapGesture.js +0 -82
- package/lib/module/handlers/getNextHandlerTag.js +0 -7
- package/lib/module/handlers/handlersRegistry.js +0 -39
- package/lib/module/handlers/utils.js +0 -61
- package/lib/module/index.js +0 -31
- package/lib/module/init.js +0 -19
- package/lib/module/jestUtils/index.js +0 -4
- package/lib/module/jestUtils/jestUtils.js +0 -311
- package/lib/module/mocks/Pressable.js +0 -4
- package/lib/module/mocks/mocks.js +0 -64
- package/lib/module/mocks.js +0 -57
- package/lib/module/mountRegistry.js +0 -32
- package/lib/module/specs/NativeRNGestureHandlerModule.js +0 -5
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.kepler.js +0 -14
- package/lib/module/specs/RNGestureHandlerButtonNativeComponent.ts +0 -24
- package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.kepler.js +0 -11
- package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -7
- package/lib/module/typeUtils.js +0 -2
- package/lib/module/utils.js +0 -81
- package/lib/module/web/Gestures.js +0 -42
- package/lib/module/web/constants.js +0 -5
- package/lib/module/web/detectors/RotationGestureDetector.js +0 -119
- package/lib/module/web/detectors/ScaleGestureDetector.js +0 -106
- package/lib/module/web/handlers/FlingGestureHandler.js +0 -137
- package/lib/module/web/handlers/GestureHandler.js +0 -682
- package/lib/module/web/handlers/HoverGestureHandler.js +0 -39
- package/lib/module/web/handlers/IGestureHandler.js +0 -2
- package/lib/module/web/handlers/LongPressGestureHandler.js +0 -140
- package/lib/module/web/handlers/ManualGestureHandler.js +0 -32
- package/lib/module/web/handlers/NativeViewGestureHandler.js +0 -135
- package/lib/module/web/handlers/PanGestureHandler.js +0 -393
- package/lib/module/web/handlers/PinchGestureHandler.js +0 -116
- package/lib/module/web/handlers/RotationGestureHandler.js +0 -123
- package/lib/module/web/handlers/TapGestureHandler.js +0 -209
- package/lib/module/web/interfaces.js +0 -28
- package/lib/module/web/tools/CircularBuffer.js +0 -35
- package/lib/module/web/tools/EventManager.js +0 -89
- package/lib/module/web/tools/GestureHandlerDelegate.js +0 -4
- package/lib/module/web/tools/GestureHandlerOrchestrator.js +0 -261
- package/lib/module/web/tools/GestureHandlerWebDelegate.js +0 -159
- package/lib/module/web/tools/InteractionManager.js +0 -91
- package/lib/module/web/tools/KeyboardEventManager.js +0 -102
- package/lib/module/web/tools/LeastSquareSolver.js +0 -154
- package/lib/module/web/tools/NodeManager.js +0 -34
- package/lib/module/web/tools/PointerEventManager.js +0 -183
- package/lib/module/web/tools/PointerTracker.js +0 -186
- package/lib/module/web/tools/Vector.js +0 -32
- package/lib/module/web/tools/VelocityTracker.js +0 -79
- package/lib/module/web/tools/WheelEventManager.js +0 -49
- package/lib/module/web/utils.js +0 -223
- package/lib/module/web_hammer/DiscreteGestureHandler.js +0 -87
- package/lib/module/web_hammer/DraggingGestureHandler.js +0 -37
- package/lib/module/web_hammer/Errors.js +0 -8
- package/lib/module/web_hammer/FlingGestureHandler.js +0 -133
- package/lib/module/web_hammer/GestureHandler.js +0 -478
- package/lib/module/web_hammer/IndiscreteGestureHandler.js +0 -41
- package/lib/module/web_hammer/LongPressGestureHandler.js +0 -51
- package/lib/module/web_hammer/NativeViewGestureHandler.js +0 -51
- package/lib/module/web_hammer/NodeManager.js +0 -33
- package/lib/module/web_hammer/PanGestureHandler.js +0 -162
- package/lib/module/web_hammer/PinchGestureHandler.js +0 -26
- package/lib/module/web_hammer/PressGestureHandler.js +0 -148
- package/lib/module/web_hammer/RotationGestureHandler.js +0 -27
- package/lib/module/web_hammer/TapGestureHandler.js +0 -160
- package/lib/module/web_hammer/constants.js +0 -46
- package/lib/module/web_hammer/utils.js +0 -21
- package/src/ActionType.ts +0 -9
- package/src/Directions.ts +0 -26
- package/src/EnableNewWebImplementation.ts +0 -53
- package/src/GestureHandlerRootViewContext.ts +0 -3
- package/src/PlatformConstants.kepler.ts +0 -5
- package/src/PlatformConstants.ts +0 -8
- package/src/PlatformConstants.web.ts +0 -5
- package/src/PointerType.ts +0 -7
- package/src/RNGestureHandlerModule.kepler.ts +0 -64
- package/src/RNGestureHandlerModule.ts +0 -5
- package/src/RNGestureHandlerModule.web.ts +0 -124
- package/src/RNGestureHandlerModule.windows.ts +0 -62
- package/src/RNRenderer.ts +0 -3
- package/src/RNRenderer.web.ts +0 -3
- package/src/State.ts +0 -13
- package/src/TouchEventType.ts +0 -11
- package/src/components/DrawerLayout.tsx +0 -788
- package/src/components/GestureButtons.tsx +0 -272
- package/src/components/GestureButtonsProps.ts +0 -156
- package/src/components/GestureComponents.tsx +0 -148
- package/src/components/GestureComponents.web.tsx +0 -41
- package/src/components/GestureHandlerButton.tsx +0 -5
- package/src/components/GestureHandlerButton.web.tsx +0 -6
- package/src/components/GestureHandlerRootView.android.tsx +0 -32
- package/src/components/GestureHandlerRootView.kepler.tsx +0 -18
- package/src/components/GestureHandlerRootView.tsx +0 -28
- package/src/components/GestureHandlerRootView.web.tsx +0 -22
- package/src/components/Pressable/Pressable.tsx +0 -401
- package/src/components/Pressable/PressableProps.tsx +0 -174
- package/src/components/Pressable/StateMachine.tsx +0 -57
- package/src/components/Pressable/index.ts +0 -5
- package/src/components/Pressable/stateDefinitions.ts +0 -126
- package/src/components/Pressable/utils.ts +0 -140
- package/src/components/ReanimatedDrawerLayout.tsx +0 -754
- package/src/components/ReanimatedSwipeable/ReanimatedSwipeable.tsx +0 -607
- package/src/components/ReanimatedSwipeable/ReanimatedSwipeableProps.ts +0 -199
- package/src/components/ReanimatedSwipeable/index.ts +0 -6
- package/src/components/Swipeable.tsx +0 -595
- package/src/components/Text.tsx +0 -77
- package/src/components/gestureHandlerRootHOC.tsx +0 -33
- package/src/components/touchables/ExtraButtonProps.ts +0 -7
- package/src/components/touchables/GenericTouchable.tsx +0 -275
- package/src/components/touchables/GenericTouchableProps.ts +0 -28
- package/src/components/touchables/TouchableHighlight.tsx +0 -118
- package/src/components/touchables/TouchableNativeFeedback.android.tsx +0 -83
- package/src/components/touchables/TouchableNativeFeedback.tsx +0 -8
- package/src/components/touchables/TouchableNativeFeedbackProps.tsx +0 -10
- package/src/components/touchables/TouchableOpacity.tsx +0 -78
- package/src/components/touchables/TouchableWithoutFeedback.tsx +0 -39
- package/src/components/touchables/index.ts +0 -7
- package/src/components/utils.ts +0 -26
- package/src/findNodeHandle.ts +0 -3
- package/src/findNodeHandle.web.ts +0 -41
- package/src/getShadowNodeFromRef.ts +0 -50
- package/src/getShadowNodeFromRef.web.ts +0 -7
- package/src/ghQueueMicrotask.ts +0 -8
- package/src/handlers/FlingGestureHandler.ts +0 -64
- package/src/handlers/ForceTouchGestureHandler.ts +0 -88
- package/src/handlers/GestureHandlerEventPayload.ts +0 -229
- package/src/handlers/LongPressGestureHandler.ts +0 -65
- package/src/handlers/NativeViewGestureHandler.ts +0 -59
- package/src/handlers/PanGestureHandler.ts +0 -282
- package/src/handlers/PinchGestureHandler.ts +0 -32
- package/src/handlers/PressabilityDebugView.tsx +0 -2
- package/src/handlers/PressabilityDebugView.web.tsx +0 -4
- package/src/handlers/RotationGestureHandler.ts +0 -32
- package/src/handlers/TapGestureHandler.ts +0 -99
- package/src/handlers/createHandler.tsx +0 -586
- package/src/handlers/createNativeWrapper.tsx +0 -89
- package/src/handlers/customDirectEventTypes.ts +0 -2
- package/src/handlers/customDirectEventTypes.web.ts +0 -5
- package/src/handlers/gestureHandlerCommon.ts +0 -211
- package/src/handlers/gestureHandlerTypesCompat.ts +0 -101
- package/src/handlers/gestures/GestureDetector/Wrap.tsx +0 -35
- package/src/handlers/gestures/GestureDetector/Wrap.web.tsx +0 -42
- package/src/handlers/gestures/GestureDetector/attachHandlers.ts +0 -112
- package/src/handlers/gestures/GestureDetector/dropHandlers.ts +0 -17
- package/src/handlers/gestures/GestureDetector/index.tsx +0 -191
- package/src/handlers/gestures/GestureDetector/needsToReattach.ts +0 -27
- package/src/handlers/gestures/GestureDetector/types.ts +0 -32
- package/src/handlers/gestures/GestureDetector/updateHandlers.ts +0 -92
- package/src/handlers/gestures/GestureDetector/useAnimatedGesture.ts +0 -209
- package/src/handlers/gestures/GestureDetector/useDetectorUpdater.ts +0 -69
- package/src/handlers/gestures/GestureDetector/useMountReactions.ts +0 -51
- package/src/handlers/gestures/GestureDetector/useViewRefHandler.ts +0 -58
- package/src/handlers/gestures/GestureDetector/utils.ts +0 -181
- package/src/handlers/gestures/eventReceiver.ts +0 -173
- package/src/handlers/gestures/flingGesture.ts +0 -36
- package/src/handlers/gestures/forceTouchGesture.ts +0 -95
- package/src/handlers/gestures/gesture.ts +0 -472
- package/src/handlers/gestures/gestureComposition.ts +0 -124
- package/src/handlers/gestures/gestureObjects.ts +0 -143
- package/src/handlers/gestures/gestureStateManager.ts +0 -76
- package/src/handlers/gestures/gestureStateManager.web.ts +0 -26
- package/src/handlers/gestures/hoverGesture.ts +0 -77
- package/src/handlers/gestures/longPressGesture.ts +0 -45
- package/src/handlers/gestures/manualGesture.ts +0 -31
- package/src/handlers/gestures/nativeGesture.ts +0 -33
- package/src/handlers/gestures/panGesture.ts +0 -221
- package/src/handlers/gestures/pinchGesture.ts +0 -51
- package/src/handlers/gestures/reanimatedWrapper.ts +0 -57
- package/src/handlers/gestures/rotationGesture.ts +0 -51
- package/src/handlers/gestures/tapGesture.ts +0 -86
- package/src/handlers/getNextHandlerTag.ts +0 -5
- package/src/handlers/handlersRegistry.ts +0 -58
- package/src/handlers/utils.ts +0 -76
- package/src/init.ts +0 -18
- package/src/jestUtils/index.ts +0 -1
- package/src/jestUtils/jestUtils.ts +0 -513
- package/src/mocks/Pressable.tsx +0 -1
- package/src/mocks/mocks.tsx +0 -70
- package/src/mocks.ts +0 -67
- package/src/mountRegistry.ts +0 -51
- package/src/specs/NativeRNGestureHandlerModule.ts +0 -26
- package/src/specs/RNGestureHandlerButtonNativeComponent.kepler.ts +0 -27
- package/src/specs/RNGestureHandlerButtonNativeComponent.ts +0 -24
- package/src/specs/RNGestureHandlerRootViewNativeComponent.kepler.ts +0 -21
- package/src/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -7
- package/src/typeUtils.ts +0 -1
- package/src/utils.ts +0 -107
- package/src/web/Gestures.ts +0 -41
- package/src/web/constants.ts +0 -2
- package/src/web/detectors/RotationGestureDetector.ts +0 -170
- package/src/web/detectors/ScaleGestureDetector.ts +0 -171
- package/src/web/handlers/FlingGestureHandler.ts +0 -196
- package/src/web/handlers/GestureHandler.ts +0 -881
- package/src/web/handlers/HoverGestureHandler.ts +0 -49
- package/src/web/handlers/IGestureHandler.ts +0 -49
- package/src/web/handlers/LongPressGestureHandler.ts +0 -175
- package/src/web/handlers/ManualGestureHandler.ts +0 -37
- package/src/web/handlers/NativeViewGestureHandler.ts +0 -175
- package/src/web/handlers/PanGestureHandler.ts +0 -571
- package/src/web/handlers/PinchGestureHandler.ts +0 -152
- package/src/web/handlers/RotationGestureHandler.ts +0 -166
- package/src/web/handlers/TapGestureHandler.ts +0 -274
- package/src/web/interfaces.ts +0 -190
- package/src/web/tools/CircularBuffer.ts +0 -42
- package/src/web/tools/EventManager.ts +0 -108
- package/src/web/tools/GestureHandlerDelegate.ts +0 -26
- package/src/web/tools/GestureHandlerOrchestrator.ts +0 -392
- package/src/web/tools/GestureHandlerWebDelegate.ts +0 -227
- package/src/web/tools/InteractionManager.ts +0 -135
- package/src/web/tools/KeyboardEventManager.ts +0 -133
- package/src/web/tools/LeastSquareSolver.ts +0 -182
- package/src/web/tools/NodeManager.ts +0 -48
- package/src/web/tools/PointerEventManager.ts +0 -226
- package/src/web/tools/PointerTracker.ts +0 -228
- package/src/web/tools/Vector.ts +0 -59
- package/src/web/tools/VelocityTracker.ts +0 -98
- package/src/web/tools/WheelEventManager.ts +0 -48
- package/src/web/utils.ts +0 -293
- package/src/web_hammer/DiscreteGestureHandler.ts +0 -82
- package/src/web_hammer/DraggingGestureHandler.ts +0 -34
- package/src/web_hammer/Errors.ts +0 -7
- package/src/web_hammer/FlingGestureHandler.ts +0 -134
- package/src/web_hammer/GestureHandler.ts +0 -600
- package/src/web_hammer/IndiscreteGestureHandler.ts +0 -33
- package/src/web_hammer/LongPressGestureHandler.ts +0 -56
- package/src/web_hammer/NativeViewGestureHandler.ts +0 -47
- package/src/web_hammer/NodeManager.ts +0 -33
- package/src/web_hammer/PanGestureHandler.ts +0 -226
- package/src/web_hammer/PinchGestureHandler.ts +0 -25
- package/src/web_hammer/PressGestureHandler.ts +0 -170
- package/src/web_hammer/RotationGestureHandler.ts +0 -25
- package/src/web_hammer/TapGestureHandler.ts +0 -172
- package/src/web_hammer/constants.ts +0 -48
- package/src/web_hammer/utils.ts +0 -24
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { ValueOf } from '../../typeUtils';
|
|
2
|
-
import { Gestures } from '../Gestures';
|
|
3
|
-
import type IGestureHandler from '../handlers/IGestureHandler';
|
|
4
|
-
|
|
5
|
-
// eslint-disable-next-line @typescript-eslint/no-extraneous-class
|
|
6
|
-
export default abstract class NodeManager {
|
|
7
|
-
private static gestures: Record<
|
|
8
|
-
number,
|
|
9
|
-
InstanceType<ValueOf<typeof Gestures>>
|
|
10
|
-
> = {};
|
|
11
|
-
|
|
12
|
-
public static getHandler(tag: number): IGestureHandler {
|
|
13
|
-
if (tag in this.gestures) {
|
|
14
|
-
return this.gestures[tag] as IGestureHandler;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
throw new Error(`No handler for tag ${tag}`);
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
public static createGestureHandler(
|
|
21
|
-
handlerTag: number,
|
|
22
|
-
handler: InstanceType<ValueOf<typeof Gestures>>
|
|
23
|
-
): void {
|
|
24
|
-
if (handlerTag in this.gestures) {
|
|
25
|
-
throw new Error(
|
|
26
|
-
`Handler with tag ${handlerTag} already exists. Please ensure that no Gesture instance is used across multiple GestureDetectors.`
|
|
27
|
-
);
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
this.gestures[handlerTag] = handler;
|
|
31
|
-
this.gestures[handlerTag].handlerTag = handlerTag;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
public static dropGestureHandler(handlerTag: number): void {
|
|
35
|
-
if (!(handlerTag in this.gestures)) {
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
this.gestures[handlerTag].onDestroy();
|
|
40
|
-
|
|
41
|
-
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete
|
|
42
|
-
delete this.gestures[handlerTag];
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
public static get nodes() {
|
|
46
|
-
return { ...this.gestures };
|
|
47
|
-
}
|
|
48
|
-
}
|
|
@@ -1,226 +0,0 @@
|
|
|
1
|
-
import EventManager from './EventManager';
|
|
2
|
-
import { MouseButton } from '../../handlers/gestureHandlerCommon';
|
|
3
|
-
import { AdaptedEvent, EventTypes, Point } from '../interfaces';
|
|
4
|
-
import {
|
|
5
|
-
PointerTypeMapping,
|
|
6
|
-
calculateViewScale,
|
|
7
|
-
tryExtractStylusData,
|
|
8
|
-
isPointerInBounds,
|
|
9
|
-
} from '../utils';
|
|
10
|
-
import { PointerType } from '../../PointerType';
|
|
11
|
-
|
|
12
|
-
const POINTER_CAPTURE_EXCLUDE_LIST = new Set<string>(['SELECT', 'INPUT']);
|
|
13
|
-
|
|
14
|
-
export default class PointerEventManager extends EventManager<HTMLElement> {
|
|
15
|
-
private trackedPointers = new Set<number>();
|
|
16
|
-
private readonly mouseButtonsMapper = new Map<number, MouseButton>();
|
|
17
|
-
private lastPosition: Point;
|
|
18
|
-
|
|
19
|
-
constructor(view: HTMLElement) {
|
|
20
|
-
super(view);
|
|
21
|
-
|
|
22
|
-
this.mouseButtonsMapper.set(0, MouseButton.LEFT);
|
|
23
|
-
this.mouseButtonsMapper.set(1, MouseButton.MIDDLE);
|
|
24
|
-
this.mouseButtonsMapper.set(2, MouseButton.RIGHT);
|
|
25
|
-
this.mouseButtonsMapper.set(3, MouseButton.BUTTON_4);
|
|
26
|
-
this.mouseButtonsMapper.set(4, MouseButton.BUTTON_5);
|
|
27
|
-
|
|
28
|
-
this.lastPosition = {
|
|
29
|
-
x: -Infinity,
|
|
30
|
-
y: -Infinity,
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
private pointerDownCallback = (event: PointerEvent) => {
|
|
35
|
-
if (!isPointerInBounds(this.view, { x: event.clientX, y: event.clientY })) {
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
const adaptedEvent: AdaptedEvent = this.mapEvent(event, EventTypes.DOWN);
|
|
40
|
-
const target = event.target as HTMLElement;
|
|
41
|
-
|
|
42
|
-
if (!POINTER_CAPTURE_EXCLUDE_LIST.has(target.tagName)) {
|
|
43
|
-
target.setPointerCapture(adaptedEvent.pointerId);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
this.markAsInBounds(adaptedEvent.pointerId);
|
|
47
|
-
this.trackedPointers.add(adaptedEvent.pointerId);
|
|
48
|
-
|
|
49
|
-
if (++this.activePointersCounter > 1) {
|
|
50
|
-
adaptedEvent.eventType = EventTypes.ADDITIONAL_POINTER_DOWN;
|
|
51
|
-
this.onPointerAdd(adaptedEvent);
|
|
52
|
-
} else {
|
|
53
|
-
this.onPointerDown(adaptedEvent);
|
|
54
|
-
}
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
private pointerUpCallback = (event: PointerEvent) => {
|
|
58
|
-
// When we call reset on gesture handlers, it also resets their event managers
|
|
59
|
-
// In some handlers (like RotationGestureHandler) reset is called before all pointers leave view
|
|
60
|
-
// This means, that activePointersCounter will be set to 0, while there are still remaining pointers on view
|
|
61
|
-
// Removing them will end in activePointersCounter going below 0, therefore handlers won't behave properly
|
|
62
|
-
if (this.activePointersCounter === 0) {
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
const adaptedEvent: AdaptedEvent = this.mapEvent(event, EventTypes.UP);
|
|
67
|
-
const target = event.target as HTMLElement;
|
|
68
|
-
|
|
69
|
-
if (!POINTER_CAPTURE_EXCLUDE_LIST.has(target.tagName)) {
|
|
70
|
-
target.releasePointerCapture(adaptedEvent.pointerId);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
this.markAsOutOfBounds(adaptedEvent.pointerId);
|
|
74
|
-
this.trackedPointers.delete(adaptedEvent.pointerId);
|
|
75
|
-
|
|
76
|
-
if (--this.activePointersCounter > 0) {
|
|
77
|
-
adaptedEvent.eventType = EventTypes.ADDITIONAL_POINTER_UP;
|
|
78
|
-
this.onPointerRemove(adaptedEvent);
|
|
79
|
-
} else {
|
|
80
|
-
this.onPointerUp(adaptedEvent);
|
|
81
|
-
}
|
|
82
|
-
};
|
|
83
|
-
|
|
84
|
-
private pointerMoveCallback = (event: PointerEvent) => {
|
|
85
|
-
const adaptedEvent: AdaptedEvent = this.mapEvent(event, EventTypes.MOVE);
|
|
86
|
-
const target = event.target as HTMLElement;
|
|
87
|
-
|
|
88
|
-
// You may be wondering why are we setting pointer capture here, when we
|
|
89
|
-
// already set it in `pointerdown` handler. Well, that's a great question,
|
|
90
|
-
// for which I don't have an answer. Specification (https://www.w3.org/TR/pointerevents2/#dom-element-setpointercapture)
|
|
91
|
-
// says that the requirement for `setPointerCapture` to work is that pointer
|
|
92
|
-
// must be in 'active buttons state`, otherwise it will fail silently, which
|
|
93
|
-
// is lovely. Obviously, when `pointerdown` is fired, one of the buttons
|
|
94
|
-
// (when using mouse) is pressed, but that doesn't mean that `setPointerCapture`
|
|
95
|
-
// will succeed, for some reason. Since it fails silently, we don't actually know
|
|
96
|
-
// if it worked or not (there's `gotpointercapture` event, but the complexity of
|
|
97
|
-
// incorporating it here seems stupid), so we just call it again here, every time
|
|
98
|
-
// pointer moves until it succeeds.
|
|
99
|
-
// God, I do love web development.
|
|
100
|
-
if (
|
|
101
|
-
!target?.hasPointerCapture(event.pointerId) &&
|
|
102
|
-
!POINTER_CAPTURE_EXCLUDE_LIST.has(target.tagName)
|
|
103
|
-
) {
|
|
104
|
-
target.setPointerCapture(event.pointerId);
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
const inBounds: boolean = isPointerInBounds(this.view, {
|
|
108
|
-
x: adaptedEvent.x,
|
|
109
|
-
y: adaptedEvent.y,
|
|
110
|
-
});
|
|
111
|
-
|
|
112
|
-
const pointerIndex: number = this.pointersInBounds.indexOf(
|
|
113
|
-
adaptedEvent.pointerId
|
|
114
|
-
);
|
|
115
|
-
|
|
116
|
-
if (inBounds) {
|
|
117
|
-
if (pointerIndex < 0) {
|
|
118
|
-
adaptedEvent.eventType = EventTypes.ENTER;
|
|
119
|
-
this.onPointerEnter(adaptedEvent);
|
|
120
|
-
this.markAsInBounds(adaptedEvent.pointerId);
|
|
121
|
-
} else {
|
|
122
|
-
this.onPointerMove(adaptedEvent);
|
|
123
|
-
}
|
|
124
|
-
} else {
|
|
125
|
-
if (pointerIndex >= 0) {
|
|
126
|
-
adaptedEvent.eventType = EventTypes.LEAVE;
|
|
127
|
-
this.onPointerLeave(adaptedEvent);
|
|
128
|
-
this.markAsOutOfBounds(adaptedEvent.pointerId);
|
|
129
|
-
} else {
|
|
130
|
-
this.onPointerOutOfBounds(adaptedEvent);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
this.lastPosition.x = event.x;
|
|
135
|
-
this.lastPosition.y = event.y;
|
|
136
|
-
};
|
|
137
|
-
|
|
138
|
-
private pointerCancelCallback = (event: PointerEvent) => {
|
|
139
|
-
const adaptedEvent: AdaptedEvent = this.mapEvent(event, EventTypes.CANCEL);
|
|
140
|
-
|
|
141
|
-
this.onPointerCancel(adaptedEvent);
|
|
142
|
-
this.markAsOutOfBounds(adaptedEvent.pointerId);
|
|
143
|
-
this.activePointersCounter = 0;
|
|
144
|
-
this.trackedPointers.clear();
|
|
145
|
-
};
|
|
146
|
-
|
|
147
|
-
private pointerEnterCallback = (event: PointerEvent) => {
|
|
148
|
-
const adaptedEvent: AdaptedEvent = this.mapEvent(event, EventTypes.ENTER);
|
|
149
|
-
|
|
150
|
-
this.onPointerMoveOver(adaptedEvent);
|
|
151
|
-
};
|
|
152
|
-
|
|
153
|
-
private pointerLeaveCallback = (event: PointerEvent) => {
|
|
154
|
-
const adaptedEvent: AdaptedEvent = this.mapEvent(event, EventTypes.LEAVE);
|
|
155
|
-
|
|
156
|
-
this.onPointerMoveOut(adaptedEvent);
|
|
157
|
-
};
|
|
158
|
-
|
|
159
|
-
private lostPointerCaptureCallback = (event: PointerEvent) => {
|
|
160
|
-
const adaptedEvent: AdaptedEvent = this.mapEvent(event, EventTypes.CANCEL);
|
|
161
|
-
|
|
162
|
-
if (this.trackedPointers.has(adaptedEvent.pointerId)) {
|
|
163
|
-
// In some cases the `pointerup` event is not fired, but `lostpointercapture` is.
|
|
164
|
-
// Here we simulate the `pointercancel` event to make sure the gesture handler stops tracking it.
|
|
165
|
-
this.onPointerCancel(adaptedEvent);
|
|
166
|
-
|
|
167
|
-
this.activePointersCounter = 0;
|
|
168
|
-
this.trackedPointers.clear();
|
|
169
|
-
}
|
|
170
|
-
};
|
|
171
|
-
|
|
172
|
-
public registerListeners(): void {
|
|
173
|
-
this.view.addEventListener('pointerdown', this.pointerDownCallback);
|
|
174
|
-
this.view.addEventListener('pointerup', this.pointerUpCallback);
|
|
175
|
-
this.view.addEventListener('pointermove', this.pointerMoveCallback);
|
|
176
|
-
this.view.addEventListener('pointercancel', this.pointerCancelCallback);
|
|
177
|
-
|
|
178
|
-
// onPointerEnter and onPointerLeave are triggered by a custom logic responsible for
|
|
179
|
-
// handling shouldCancelWhenOutside flag, and are unreliable unless the pointer is down.
|
|
180
|
-
// We therefore use pointerenter and pointerleave events to handle the hover gesture,
|
|
181
|
-
// mapping them to onPointerMoveOver and onPointerMoveOut respectively.
|
|
182
|
-
this.view.addEventListener('pointerenter', this.pointerEnterCallback);
|
|
183
|
-
this.view.addEventListener('pointerleave', this.pointerLeaveCallback);
|
|
184
|
-
this.view.addEventListener(
|
|
185
|
-
'lostpointercapture',
|
|
186
|
-
this.lostPointerCaptureCallback
|
|
187
|
-
);
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
public unregisterListeners(): void {
|
|
191
|
-
this.view.removeEventListener('pointerdown', this.pointerDownCallback);
|
|
192
|
-
this.view.removeEventListener('pointerup', this.pointerUpCallback);
|
|
193
|
-
this.view.removeEventListener('pointermove', this.pointerMoveCallback);
|
|
194
|
-
this.view.removeEventListener('pointercancel', this.pointerCancelCallback);
|
|
195
|
-
this.view.removeEventListener('pointerenter', this.pointerEnterCallback);
|
|
196
|
-
this.view.removeEventListener('pointerleave', this.pointerLeaveCallback);
|
|
197
|
-
this.view.removeEventListener(
|
|
198
|
-
'lostpointercapture',
|
|
199
|
-
this.lostPointerCaptureCallback
|
|
200
|
-
);
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
protected mapEvent(event: PointerEvent, eventType: EventTypes): AdaptedEvent {
|
|
204
|
-
const rect = this.view.getBoundingClientRect();
|
|
205
|
-
const { scaleX, scaleY } = calculateViewScale(this.view);
|
|
206
|
-
|
|
207
|
-
return {
|
|
208
|
-
x: event.clientX,
|
|
209
|
-
y: event.clientY,
|
|
210
|
-
offsetX: (event.clientX - rect.left) / scaleX,
|
|
211
|
-
offsetY: (event.clientY - rect.top) / scaleY,
|
|
212
|
-
pointerId: event.pointerId,
|
|
213
|
-
eventType: eventType,
|
|
214
|
-
pointerType:
|
|
215
|
-
PointerTypeMapping.get(event.pointerType) ?? PointerType.OTHER,
|
|
216
|
-
button: this.mouseButtonsMapper.get(event.button),
|
|
217
|
-
time: event.timeStamp,
|
|
218
|
-
stylusData: tryExtractStylusData(event),
|
|
219
|
-
};
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
public resetManager(): void {
|
|
223
|
-
super.resetManager();
|
|
224
|
-
this.trackedPointers.clear();
|
|
225
|
-
}
|
|
226
|
-
}
|
|
@@ -1,228 +0,0 @@
|
|
|
1
|
-
import { AdaptedEvent, Point } from '../interfaces';
|
|
2
|
-
import VelocityTracker from './VelocityTracker';
|
|
3
|
-
|
|
4
|
-
export interface TrackerElement {
|
|
5
|
-
abosoluteCoords: Point;
|
|
6
|
-
relativeCoords: Point;
|
|
7
|
-
timestamp: number;
|
|
8
|
-
velocityX: number;
|
|
9
|
-
velocityY: number;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
const MAX_POINTERS = 20;
|
|
13
|
-
|
|
14
|
-
export default class PointerTracker {
|
|
15
|
-
private velocityTracker = new VelocityTracker();
|
|
16
|
-
private readonly _trackedPointers: Map<number, TrackerElement> = new Map<
|
|
17
|
-
number,
|
|
18
|
-
TrackerElement
|
|
19
|
-
>();
|
|
20
|
-
|
|
21
|
-
private touchEventsIds: Map<number, number> = new Map<number, number>();
|
|
22
|
-
|
|
23
|
-
private lastMovedPointerId: number;
|
|
24
|
-
|
|
25
|
-
private cachedAbsoluteAverages: Point = { x: 0, y: 0 };
|
|
26
|
-
private cachedRelativeAverages: Point = { x: 0, y: 0 };
|
|
27
|
-
|
|
28
|
-
public constructor() {
|
|
29
|
-
this.lastMovedPointerId = NaN;
|
|
30
|
-
|
|
31
|
-
for (let i = 0; i < MAX_POINTERS; ++i) {
|
|
32
|
-
this.touchEventsIds.set(i, NaN);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
public addToTracker(event: AdaptedEvent): void {
|
|
37
|
-
if (this.trackedPointers.has(event.pointerId)) {
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
this.lastMovedPointerId = event.pointerId;
|
|
42
|
-
|
|
43
|
-
const newElement: TrackerElement = {
|
|
44
|
-
abosoluteCoords: { x: event.x, y: event.y },
|
|
45
|
-
relativeCoords: { x: event.offsetX, y: event.offsetY },
|
|
46
|
-
timestamp: event.time,
|
|
47
|
-
velocityX: 0,
|
|
48
|
-
velocityY: 0,
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
this.trackedPointers.set(event.pointerId, newElement);
|
|
52
|
-
this.mapTouchEventId(event.pointerId);
|
|
53
|
-
|
|
54
|
-
this.cachedAbsoluteAverages = this.getAbsoluteCoordsAverage();
|
|
55
|
-
this.cachedRelativeAverages = this.getRelativeCoordsAverage();
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
public removeFromTracker(pointerId: number): void {
|
|
59
|
-
this.trackedPointers.delete(pointerId);
|
|
60
|
-
this.removeMappedTouchId(pointerId);
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
public track(event: AdaptedEvent): void {
|
|
64
|
-
const pointerData = this.trackedPointers.get(event.pointerId);
|
|
65
|
-
|
|
66
|
-
if (!pointerData) {
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
this.lastMovedPointerId = event.pointerId;
|
|
71
|
-
|
|
72
|
-
this.velocityTracker.add(event);
|
|
73
|
-
const [velocityX, velocityY] = this.velocityTracker.velocity;
|
|
74
|
-
|
|
75
|
-
pointerData.velocityX = velocityX;
|
|
76
|
-
pointerData.velocityY = velocityY;
|
|
77
|
-
|
|
78
|
-
pointerData.abosoluteCoords = { x: event.x, y: event.y };
|
|
79
|
-
pointerData.relativeCoords = { x: event.offsetX, y: event.offsetY };
|
|
80
|
-
|
|
81
|
-
this.trackedPointers.set(event.pointerId, pointerData);
|
|
82
|
-
|
|
83
|
-
this.cachedAbsoluteAverages = this.getAbsoluteCoordsAverage();
|
|
84
|
-
this.cachedRelativeAverages = this.getRelativeCoordsAverage();
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
// Mapping TouchEvents ID
|
|
88
|
-
private mapTouchEventId(id: number): void {
|
|
89
|
-
for (const [mappedId, touchId] of this.touchEventsIds) {
|
|
90
|
-
if (isNaN(touchId)) {
|
|
91
|
-
this.touchEventsIds.set(mappedId, id);
|
|
92
|
-
break;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
private removeMappedTouchId(id: number): void {
|
|
98
|
-
const mappedId: number = this.getMappedTouchEventId(id);
|
|
99
|
-
if (!isNaN(mappedId)) {
|
|
100
|
-
this.touchEventsIds.set(mappedId, NaN);
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
public getMappedTouchEventId(touchEventId: number): number {
|
|
105
|
-
for (const [key, value] of this.touchEventsIds.entries()) {
|
|
106
|
-
if (value === touchEventId) {
|
|
107
|
-
return key;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
return NaN;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
public getVelocity(pointerId: number) {
|
|
115
|
-
const pointerData = this.trackedPointers.get(pointerId);
|
|
116
|
-
|
|
117
|
-
return pointerData
|
|
118
|
-
? {
|
|
119
|
-
x: pointerData.velocityX,
|
|
120
|
-
y: pointerData.velocityY,
|
|
121
|
-
}
|
|
122
|
-
: null;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
public getLastAbsoluteCoords(pointerId?: number) {
|
|
126
|
-
return this.trackedPointers.get(pointerId ?? this.lastMovedPointerId)
|
|
127
|
-
?.abosoluteCoords;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
public getLastRelativeCoords(pointerId?: number) {
|
|
131
|
-
return this.trackedPointers.get(pointerId ?? this.lastMovedPointerId)
|
|
132
|
-
?.relativeCoords;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
// Some handlers use these methods to send average values in native event.
|
|
136
|
-
// This may happen when pointers have already been removed from tracker (i.e. pointerup event).
|
|
137
|
-
// In situation when NaN would be sent as a response, we return cached value.
|
|
138
|
-
// That prevents handlers from crashing
|
|
139
|
-
|
|
140
|
-
public getAbsoluteCoordsAverage() {
|
|
141
|
-
const coordsSum = this.getAbsoluteCoordsSum();
|
|
142
|
-
|
|
143
|
-
const avgX = coordsSum.x / this.trackedPointers.size;
|
|
144
|
-
const avgY = coordsSum.y / this.trackedPointers.size;
|
|
145
|
-
|
|
146
|
-
const averages = {
|
|
147
|
-
x: isNaN(avgX) ? this.cachedAbsoluteAverages.x : avgX,
|
|
148
|
-
y: isNaN(avgY) ? this.cachedAbsoluteAverages.y : avgY,
|
|
149
|
-
};
|
|
150
|
-
|
|
151
|
-
return averages;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
public getRelativeCoordsAverage() {
|
|
155
|
-
const coordsSum = this.getRelativeCoordsSum();
|
|
156
|
-
|
|
157
|
-
const avgX = coordsSum.x / this.trackedPointers.size;
|
|
158
|
-
const avgY = coordsSum.y / this.trackedPointers.size;
|
|
159
|
-
|
|
160
|
-
const averages = {
|
|
161
|
-
x: isNaN(avgX) ? this.cachedRelativeAverages.x : avgX,
|
|
162
|
-
y: isNaN(avgY) ? this.cachedRelativeAverages.y : avgY,
|
|
163
|
-
};
|
|
164
|
-
|
|
165
|
-
return averages;
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
public getAbsoluteCoordsSum(ignoredPointer?: number) {
|
|
169
|
-
const sum = { x: 0, y: 0 };
|
|
170
|
-
|
|
171
|
-
this.trackedPointers.forEach((value, key) => {
|
|
172
|
-
if (key !== ignoredPointer) {
|
|
173
|
-
sum.x += value.abosoluteCoords.x;
|
|
174
|
-
sum.y += value.abosoluteCoords.y;
|
|
175
|
-
}
|
|
176
|
-
});
|
|
177
|
-
|
|
178
|
-
return sum;
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
public getRelativeCoordsSum(ignoredPointer?: number) {
|
|
182
|
-
const sum = { x: 0, y: 0 };
|
|
183
|
-
|
|
184
|
-
this.trackedPointers.forEach((value, key) => {
|
|
185
|
-
if (key !== ignoredPointer) {
|
|
186
|
-
sum.x += value.relativeCoords.x;
|
|
187
|
-
sum.y += value.relativeCoords.y;
|
|
188
|
-
}
|
|
189
|
-
});
|
|
190
|
-
|
|
191
|
-
return sum;
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
public resetTracker(): void {
|
|
195
|
-
this.velocityTracker.reset();
|
|
196
|
-
this.trackedPointers.clear();
|
|
197
|
-
this.lastMovedPointerId = NaN;
|
|
198
|
-
|
|
199
|
-
for (let i = 0; i < MAX_POINTERS; ++i) {
|
|
200
|
-
this.touchEventsIds.set(i, NaN);
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
public static shareCommonPointers(
|
|
205
|
-
stPointers: number[],
|
|
206
|
-
ndPointers: number[]
|
|
207
|
-
): boolean {
|
|
208
|
-
return stPointers.some((pointerId) => ndPointers.includes(pointerId));
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
public get trackedPointersCount(): number {
|
|
212
|
-
return this.trackedPointers.size;
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
public get trackedPointersIDs() {
|
|
216
|
-
const keys: number[] = [];
|
|
217
|
-
|
|
218
|
-
this.trackedPointers.forEach((_value, key) => {
|
|
219
|
-
keys.push(key);
|
|
220
|
-
});
|
|
221
|
-
|
|
222
|
-
return keys;
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
public get trackedPointers() {
|
|
226
|
-
return this._trackedPointers;
|
|
227
|
-
}
|
|
228
|
-
}
|
package/src/web/tools/Vector.ts
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { DiagonalDirections, Directions } from '../../Directions';
|
|
2
|
-
import { MINIMAL_RECOGNIZABLE_MAGNITUDE } from '../constants';
|
|
3
|
-
import PointerTracker from './PointerTracker';
|
|
4
|
-
|
|
5
|
-
export default class Vector {
|
|
6
|
-
private readonly x;
|
|
7
|
-
private readonly y;
|
|
8
|
-
private readonly unitX;
|
|
9
|
-
private readonly unitY;
|
|
10
|
-
private readonly _magnitude;
|
|
11
|
-
|
|
12
|
-
constructor(x: number, y: number) {
|
|
13
|
-
this.x = x;
|
|
14
|
-
this.y = y;
|
|
15
|
-
|
|
16
|
-
this._magnitude = Math.hypot(this.x, this.y);
|
|
17
|
-
const isMagnitudeSufficient =
|
|
18
|
-
this._magnitude > MINIMAL_RECOGNIZABLE_MAGNITUDE;
|
|
19
|
-
|
|
20
|
-
this.unitX = isMagnitudeSufficient ? this.x / this._magnitude : 0;
|
|
21
|
-
this.unitY = isMagnitudeSufficient ? this.y / this._magnitude : 0;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
static fromDirection(direction: Directions | DiagonalDirections): Vector {
|
|
25
|
-
return DirectionToVectorMappings.get(direction) ?? new Vector(0, 0);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
static fromVelocity(tracker: PointerTracker, pointerId: number) {
|
|
29
|
-
const velocity = tracker.getVelocity(pointerId);
|
|
30
|
-
return velocity ? new Vector(velocity.x, velocity.y) : null;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
public get magnitude() {
|
|
34
|
-
return this._magnitude;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
computeSimilarity(vector: Vector) {
|
|
38
|
-
return this.unitX * vector.unitX + this.unitY * vector.unitY;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
isSimilar(vector: Vector, threshold: number) {
|
|
42
|
-
return this.computeSimilarity(vector) > threshold;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
const DirectionToVectorMappings = new Map<
|
|
47
|
-
Directions | DiagonalDirections,
|
|
48
|
-
Vector
|
|
49
|
-
>([
|
|
50
|
-
[Directions.LEFT, new Vector(-1, 0)],
|
|
51
|
-
[Directions.RIGHT, new Vector(1, 0)],
|
|
52
|
-
[Directions.UP, new Vector(0, -1)],
|
|
53
|
-
[Directions.DOWN, new Vector(0, 1)],
|
|
54
|
-
|
|
55
|
-
[DiagonalDirections.UP_RIGHT, new Vector(1, -1)],
|
|
56
|
-
[DiagonalDirections.DOWN_RIGHT, new Vector(1, 1)],
|
|
57
|
-
[DiagonalDirections.UP_LEFT, new Vector(-1, -1)],
|
|
58
|
-
[DiagonalDirections.DOWN_LEFT, new Vector(-1, 1)],
|
|
59
|
-
]);
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { AdaptedEvent } from '../interfaces';
|
|
2
|
-
import CircularBuffer from './CircularBuffer';
|
|
3
|
-
import LeastSquareSolver from './LeastSquareSolver';
|
|
4
|
-
|
|
5
|
-
export default class VelocityTracker {
|
|
6
|
-
private assumePointerMoveStoppedMilliseconds = 40;
|
|
7
|
-
private historySize = 20;
|
|
8
|
-
private horizonMilliseconds = 300;
|
|
9
|
-
private minSampleSize = 3;
|
|
10
|
-
|
|
11
|
-
private samples: CircularBuffer<AdaptedEvent>;
|
|
12
|
-
|
|
13
|
-
constructor() {
|
|
14
|
-
this.samples = new CircularBuffer<AdaptedEvent>(this.historySize);
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
public add(event: AdaptedEvent): void {
|
|
18
|
-
this.samples.push(event);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
// Returns an estimate of the velocity of the object being tracked by the
|
|
22
|
-
// tracker given the current information available to the tracker.
|
|
23
|
-
//
|
|
24
|
-
// Information is added using [addPosition].
|
|
25
|
-
//
|
|
26
|
-
// Returns null if there is no data on which to base an estimate.
|
|
27
|
-
private getVelocityEstimate(): [number, number] | null {
|
|
28
|
-
const x = [];
|
|
29
|
-
const y = [];
|
|
30
|
-
const w = [];
|
|
31
|
-
const time = [];
|
|
32
|
-
|
|
33
|
-
let sampleCount = 0;
|
|
34
|
-
let index = this.samples.size - 1;
|
|
35
|
-
const newestSample = this.samples.get(index);
|
|
36
|
-
if (!newestSample) {
|
|
37
|
-
return null;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
let previousSample = newestSample;
|
|
41
|
-
|
|
42
|
-
// Starting with the most recent PointAtTime sample, iterate backwards while
|
|
43
|
-
// the samples represent continuous motion.
|
|
44
|
-
while (sampleCount < this.samples.size) {
|
|
45
|
-
const sample = this.samples.get(index);
|
|
46
|
-
|
|
47
|
-
const age = newestSample.time - sample.time;
|
|
48
|
-
const delta = Math.abs(sample.time - previousSample.time);
|
|
49
|
-
previousSample = sample;
|
|
50
|
-
|
|
51
|
-
if (
|
|
52
|
-
age > this.horizonMilliseconds ||
|
|
53
|
-
delta > this.assumePointerMoveStoppedMilliseconds
|
|
54
|
-
) {
|
|
55
|
-
break;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
x.push(sample.x);
|
|
59
|
-
y.push(sample.y);
|
|
60
|
-
w.push(1);
|
|
61
|
-
time.push(-age);
|
|
62
|
-
|
|
63
|
-
sampleCount++;
|
|
64
|
-
index--;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
if (sampleCount >= this.minSampleSize) {
|
|
68
|
-
const xSolver = new LeastSquareSolver(time, x, w);
|
|
69
|
-
const xFit = xSolver.solve(2);
|
|
70
|
-
|
|
71
|
-
if (xFit !== null) {
|
|
72
|
-
const ySolver = new LeastSquareSolver(time, y, w);
|
|
73
|
-
const yFit = ySolver.solve(2);
|
|
74
|
-
|
|
75
|
-
if (yFit !== null) {
|
|
76
|
-
const xVelocity = xFit.coefficients[1] * 1000;
|
|
77
|
-
const yVelocity = yFit.coefficients[1] * 1000;
|
|
78
|
-
|
|
79
|
-
return [xVelocity, yVelocity];
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
return null;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
public get velocity(): [number, number] {
|
|
88
|
-
const estimate = this.getVelocityEstimate();
|
|
89
|
-
if (estimate !== null) {
|
|
90
|
-
return estimate;
|
|
91
|
-
}
|
|
92
|
-
return [0, 0];
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
public reset(): void {
|
|
96
|
-
this.samples.clear();
|
|
97
|
-
}
|
|
98
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import EventManager from './EventManager';
|
|
2
|
-
import { AdaptedEvent, EventTypes } from '../interfaces';
|
|
3
|
-
import { PointerType } from '../../PointerType';
|
|
4
|
-
|
|
5
|
-
export default class WheelEventManager extends EventManager<HTMLElement> {
|
|
6
|
-
private wheelDelta = { x: 0, y: 0 };
|
|
7
|
-
|
|
8
|
-
private resetDelta = (_event: PointerEvent) => {
|
|
9
|
-
this.wheelDelta = { x: 0, y: 0 };
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
private wheelCallback = (event: WheelEvent) => {
|
|
13
|
-
this.wheelDelta.x += event.deltaX;
|
|
14
|
-
this.wheelDelta.y += event.deltaY;
|
|
15
|
-
|
|
16
|
-
const adaptedEvent = this.mapEvent(event);
|
|
17
|
-
this.onWheel(adaptedEvent);
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
public registerListeners(): void {
|
|
21
|
-
this.view.addEventListener('pointermove', this.resetDelta);
|
|
22
|
-
this.view.addEventListener('wheel', this.wheelCallback);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
public unregisterListeners(): void {
|
|
26
|
-
this.view.removeEventListener('pointermove', this.resetDelta);
|
|
27
|
-
this.view.removeEventListener('wheel', this.wheelCallback);
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
protected mapEvent(event: WheelEvent): AdaptedEvent {
|
|
31
|
-
return {
|
|
32
|
-
x: event.clientX + this.wheelDelta.x,
|
|
33
|
-
y: event.clientY + this.wheelDelta.y,
|
|
34
|
-
offsetX: event.offsetX - event.deltaX,
|
|
35
|
-
offsetY: event.offsetY - event.deltaY,
|
|
36
|
-
pointerId: -1,
|
|
37
|
-
eventType: EventTypes.MOVE,
|
|
38
|
-
pointerType: PointerType.OTHER,
|
|
39
|
-
time: event.timeStamp,
|
|
40
|
-
// @ts-ignore It does exist, but it's deprecated
|
|
41
|
-
wheelDeltaY: event.wheelDeltaY,
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
public resetManager(): void {
|
|
46
|
-
super.resetManager();
|
|
47
|
-
}
|
|
48
|
-
}
|