react-native-gesture-handler 2.7.1 → 2.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (232) hide show
  1. package/RNGestureHandler.podspec +1 -1
  2. package/android/build.gradle +53 -46
  3. package/android/noreanimated/src/main/java/com/swmansion/gesturehandler/ReanimatedEventDispatcher.kt +3 -3
  4. package/android/reanimated/src/main/java/com/swmansion/gesturehandler/ReanimatedEventDispatcher.kt +7 -7
  5. package/android/src/fabric/java/com/swmansion/gesturehandler/ReactContextExtensions.kt +2 -2
  6. package/android/src/main/java/com/swmansion/gesturehandler/RNGestureHandlerPackage.kt +3 -3
  7. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/FlingGestureHandler.kt +12 -9
  8. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/GestureHandler.kt +39 -31
  9. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/GestureHandlerInteractionController.kt +1 -1
  10. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/GestureHandlerOrchestrator.kt +28 -19
  11. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/GestureHandlerRegistry.kt +1 -1
  12. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/GestureUtils.kt +1 -1
  13. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/LongPressGestureHandler.kt +1 -1
  14. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/ManualGestureHandler.kt +1 -1
  15. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/NativeViewGestureHandler.kt +5 -5
  16. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/OnTouchEventListener.kt +1 -1
  17. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/PanGestureHandler.kt +7 -5
  18. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/PinchGestureHandler.kt +11 -4
  19. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/PointerEventsConfig.kt +1 -1
  20. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/RotationGestureDetector.kt +1 -1
  21. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/RotationGestureHandler.kt +7 -2
  22. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/ScaleGestureDetector.java +1 -1
  23. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/TapGestureHandler.kt +3 -3
  24. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/core}/ViewConfigurationHelper.kt +1 -1
  25. package/android/{lib/src/main/java/com/swmansion/gesturehandler → src/main/java/com/swmansion/gesturehandler/react}/Extensions.kt +3 -3
  26. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.kt +8 -6
  27. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerEnabledRootView.kt +1 -5
  28. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerEvent.kt +20 -8
  29. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerEventDataExtractor.kt +1 -1
  30. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerInteractionManager.kt +3 -3
  31. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.kt +40 -15
  32. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRegistry.kt +2 -2
  33. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootHelper.kt +8 -6
  34. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootView.kt +0 -2
  35. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootViewManager.kt +4 -2
  36. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerStateChangeEvent.kt +7 -7
  37. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerTouchEvent.kt +5 -5
  38. package/android/src/main/java/com/swmansion/gesturehandler/react/RNViewConfigurationHelper.kt +2 -2
  39. package/android/src/main/jni/CMakeLists.txt +10 -44
  40. package/android/src/main/jni/cpp-adapter.cpp +16 -13
  41. package/android/src/paper/java/com/swmansion/gesturehandler/ReactContextExtensions.kt +5 -5
  42. package/ios/Handlers/RNFlingHandler.m +39 -37
  43. package/ios/Handlers/RNForceTouchHandler.m +19 -17
  44. package/ios/Handlers/RNLongPressHandler.m +20 -22
  45. package/ios/Handlers/RNManualHandler.m +23 -8
  46. package/ios/Handlers/RNNativeViewHandler.mm +92 -88
  47. package/ios/Handlers/RNPanHandler.m +28 -32
  48. package/ios/Handlers/RNPinchHandler.m +9 -10
  49. package/ios/Handlers/RNRotationHandler.m +11 -14
  50. package/ios/Handlers/RNTapHandler.m +26 -26
  51. package/ios/RNGestureHandler.h +31 -24
  52. package/ios/RNGestureHandler.m +278 -273
  53. package/ios/RNGestureHandlerActionType.h +6 -4
  54. package/ios/RNGestureHandlerButton.m +11 -12
  55. package/ios/RNGestureHandlerButtonComponentView.mm +7 -8
  56. package/ios/RNGestureHandlerButtonManager.m +6 -5
  57. package/ios/RNGestureHandlerDirection.h +4 -4
  58. package/ios/RNGestureHandlerEvents.h +3 -4
  59. package/ios/RNGestureHandlerEvents.m +114 -119
  60. package/ios/RNGestureHandlerManager.h +1 -2
  61. package/ios/RNGestureHandlerManager.mm +176 -178
  62. package/ios/RNGestureHandlerModule.h +1 -2
  63. package/ios/RNGestureHandlerModule.mm +126 -122
  64. package/ios/RNGestureHandlerPointerTracker.h +1 -1
  65. package/ios/RNGestureHandlerPointerTracker.m +40 -37
  66. package/ios/RNGestureHandlerRegistry.h +3 -1
  67. package/ios/RNGestureHandlerRegistry.m +24 -22
  68. package/ios/RNGestureHandlerState.h +6 -6
  69. package/ios/RNGestureHandlerStateManager.h +1 -1
  70. package/ios/RNManualActivationRecognizer.m +9 -9
  71. package/ios/RNRootViewGestureRecognizer.m +36 -39
  72. package/lib/commonjs/RNGestureHandlerModule.macos.js.map +1 -1
  73. package/lib/commonjs/RNGestureHandlerModule.web.js.map +1 -1
  74. package/lib/commonjs/RNGestureHandlerModule.windows.js +156 -0
  75. package/lib/commonjs/RNGestureHandlerModule.windows.js.map +1 -0
  76. package/lib/commonjs/components/DrawerLayout.js +1 -0
  77. package/lib/commonjs/components/DrawerLayout.js.map +1 -1
  78. package/lib/commonjs/components/Swipeable.js.map +1 -1
  79. package/lib/commonjs/components/touchables/TouchableOpacity.js.map +1 -1
  80. package/lib/commonjs/gestureHandlerRootHOC.js +2 -1
  81. package/lib/commonjs/gestureHandlerRootHOC.js.map +1 -1
  82. package/lib/commonjs/getShadowNodeFromRef.js +2 -2
  83. package/lib/commonjs/getShadowNodeFromRef.js.map +1 -1
  84. package/lib/commonjs/handlers/LongPressGestureHandler.js +3 -1
  85. package/lib/commonjs/handlers/LongPressGestureHandler.js.map +1 -1
  86. package/lib/commonjs/handlers/TapGestureHandler.js +3 -1
  87. package/lib/commonjs/handlers/TapGestureHandler.js.map +1 -1
  88. package/lib/commonjs/handlers/createHandler.js.map +1 -1
  89. package/lib/commonjs/handlers/gestureHandlerCommon.js +5 -2
  90. package/lib/commonjs/handlers/gestureHandlerCommon.js.map +1 -1
  91. package/lib/commonjs/handlers/gestureHandlerTypesCompat.js +4 -0
  92. package/lib/commonjs/handlers/gestures/GestureDetector.js +87 -38
  93. package/lib/commonjs/handlers/gestures/GestureDetector.js.map +1 -1
  94. package/lib/commonjs/handlers/gestures/eventReceiver.js.map +1 -1
  95. package/lib/commonjs/handlers/gestures/gesture.js.map +1 -1
  96. package/lib/commonjs/handlers/gestures/longPressGesture.js +1 -0
  97. package/lib/commonjs/handlers/gestures/longPressGesture.js.map +1 -1
  98. package/lib/commonjs/handlers/gestures/tapGesture.js +1 -0
  99. package/lib/commonjs/handlers/gestures/tapGesture.js.map +1 -1
  100. package/lib/commonjs/jestUtils/jestUtils.js.map +1 -1
  101. package/lib/commonjs/web/detectors/RotationGestureDetector.js.map +1 -1
  102. package/lib/commonjs/web/handlers/FlingGestureHandler.js +0 -1
  103. package/lib/commonjs/web/handlers/FlingGestureHandler.js.map +1 -1
  104. package/lib/commonjs/web/handlers/GestureHandler.js +28 -3
  105. package/lib/commonjs/web/handlers/GestureHandler.js.map +1 -1
  106. package/lib/commonjs/web/handlers/LongPressGestureHandler.js +0 -2
  107. package/lib/commonjs/web/handlers/LongPressGestureHandler.js.map +1 -1
  108. package/lib/commonjs/web/handlers/ManualGestureHandler.js +15 -0
  109. package/lib/commonjs/web/handlers/ManualGestureHandler.js.map +1 -1
  110. package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +0 -2
  111. package/lib/commonjs/web/handlers/NativeViewGestureHandler.js.map +1 -1
  112. package/lib/commonjs/web/handlers/PanGestureHandler.js +0 -5
  113. package/lib/commonjs/web/handlers/PanGestureHandler.js.map +1 -1
  114. package/lib/commonjs/web/handlers/PinchGestureHandler.js +0 -1
  115. package/lib/commonjs/web/handlers/PinchGestureHandler.js.map +1 -1
  116. package/lib/commonjs/web/handlers/RotationGestureHandler.js +0 -1
  117. package/lib/commonjs/web/handlers/RotationGestureHandler.js.map +1 -1
  118. package/lib/commonjs/web/handlers/TapGestureHandler.js +0 -2
  119. package/lib/commonjs/web/handlers/TapGestureHandler.js.map +1 -1
  120. package/lib/commonjs/web/interfaces.js.map +1 -1
  121. package/lib/commonjs/web/tools/InteractionManager.js.map +1 -1
  122. package/lib/commonjs/web_hammer/GestureHandler.js.map +1 -1
  123. package/lib/commonjs/web_hammer/NodeManager.js +4 -1
  124. package/lib/commonjs/web_hammer/NodeManager.js.map +1 -1
  125. package/lib/commonjs/web_hammer/PanGestureHandler.js +25 -6
  126. package/lib/commonjs/web_hammer/PanGestureHandler.js.map +1 -1
  127. package/lib/module/RNGestureHandlerModule.macos.js.map +1 -1
  128. package/lib/module/RNGestureHandlerModule.web.js.map +1 -1
  129. package/lib/module/RNGestureHandlerModule.windows.js +117 -0
  130. package/lib/module/RNGestureHandlerModule.windows.js.map +1 -0
  131. package/lib/module/components/DrawerLayout.js +1 -0
  132. package/lib/module/components/DrawerLayout.js.map +1 -1
  133. package/lib/module/components/Swipeable.js.map +1 -1
  134. package/lib/module/components/touchables/TouchableOpacity.js.map +1 -1
  135. package/lib/module/gestureHandlerRootHOC.js +2 -1
  136. package/lib/module/gestureHandlerRootHOC.js.map +1 -1
  137. package/lib/module/getShadowNodeFromRef.js +2 -2
  138. package/lib/module/getShadowNodeFromRef.js.map +1 -1
  139. package/lib/module/handlers/LongPressGestureHandler.js +3 -1
  140. package/lib/module/handlers/LongPressGestureHandler.js.map +1 -1
  141. package/lib/module/handlers/TapGestureHandler.js +3 -1
  142. package/lib/module/handlers/TapGestureHandler.js.map +1 -1
  143. package/lib/module/handlers/createHandler.js.map +1 -1
  144. package/lib/module/handlers/gestureHandlerCommon.js +5 -2
  145. package/lib/module/handlers/gestureHandlerCommon.js.map +1 -1
  146. package/lib/module/handlers/gestureHandlerTypesCompat.js +1 -1
  147. package/lib/module/handlers/gestures/GestureDetector.js +89 -39
  148. package/lib/module/handlers/gestures/GestureDetector.js.map +1 -1
  149. package/lib/module/handlers/gestures/eventReceiver.js.map +1 -1
  150. package/lib/module/handlers/gestures/gesture.js.map +1 -1
  151. package/lib/module/handlers/gestures/longPressGesture.js +1 -0
  152. package/lib/module/handlers/gestures/longPressGesture.js.map +1 -1
  153. package/lib/module/handlers/gestures/tapGesture.js +1 -0
  154. package/lib/module/handlers/gestures/tapGesture.js.map +1 -1
  155. package/lib/module/jestUtils/jestUtils.js.map +1 -1
  156. package/lib/module/web/detectors/RotationGestureDetector.js.map +1 -1
  157. package/lib/module/web/handlers/FlingGestureHandler.js +0 -1
  158. package/lib/module/web/handlers/FlingGestureHandler.js.map +1 -1
  159. package/lib/module/web/handlers/GestureHandler.js +28 -3
  160. package/lib/module/web/handlers/GestureHandler.js.map +1 -1
  161. package/lib/module/web/handlers/LongPressGestureHandler.js +0 -2
  162. package/lib/module/web/handlers/LongPressGestureHandler.js.map +1 -1
  163. package/lib/module/web/handlers/ManualGestureHandler.js +15 -0
  164. package/lib/module/web/handlers/ManualGestureHandler.js.map +1 -1
  165. package/lib/module/web/handlers/NativeViewGestureHandler.js +0 -2
  166. package/lib/module/web/handlers/NativeViewGestureHandler.js.map +1 -1
  167. package/lib/module/web/handlers/PanGestureHandler.js +0 -5
  168. package/lib/module/web/handlers/PanGestureHandler.js.map +1 -1
  169. package/lib/module/web/handlers/PinchGestureHandler.js +0 -1
  170. package/lib/module/web/handlers/PinchGestureHandler.js.map +1 -1
  171. package/lib/module/web/handlers/RotationGestureHandler.js +0 -1
  172. package/lib/module/web/handlers/RotationGestureHandler.js.map +1 -1
  173. package/lib/module/web/handlers/TapGestureHandler.js +0 -2
  174. package/lib/module/web/handlers/TapGestureHandler.js.map +1 -1
  175. package/lib/module/web/interfaces.js.map +1 -1
  176. package/lib/module/web/tools/InteractionManager.js.map +1 -1
  177. package/lib/module/web_hammer/GestureHandler.js.map +1 -1
  178. package/lib/module/web_hammer/NodeManager.js +4 -1
  179. package/lib/module/web_hammer/NodeManager.js.map +1 -1
  180. package/lib/module/web_hammer/PanGestureHandler.js +25 -6
  181. package/lib/module/web_hammer/PanGestureHandler.js.map +1 -1
  182. package/lib/typescript/RNGestureHandlerModule.macos.d.ts +1 -1
  183. package/lib/typescript/RNGestureHandlerModule.web.d.ts +1 -1
  184. package/lib/typescript/RNGestureHandlerModule.windows.d.ts +48 -0
  185. package/lib/typescript/components/DrawerLayout.d.ts +10 -1
  186. package/lib/typescript/components/Swipeable.d.ts +3 -2
  187. package/lib/typescript/fabric/RNGestureHandlerButtonNativeComponent.d.ts +1 -1
  188. package/lib/typescript/fabric/RNGestureHandlerRootViewNativeComponent.d.ts +1 -1
  189. package/lib/typescript/gestureHandlerRootHOC.d.ts +1 -1
  190. package/lib/typescript/handlers/NativeViewGestureHandler.d.ts +1 -1
  191. package/lib/typescript/handlers/PanGestureHandler.d.ts +1 -1
  192. package/lib/typescript/handlers/gestureHandlerCommon.d.ts +3 -1
  193. package/lib/typescript/handlers/gestures/GestureDetector.d.ts +3 -1
  194. package/lib/typescript/web/handlers/ManualGestureHandler.d.ts +3 -1
  195. package/lib/typescript/web/interfaces.d.ts +3 -1
  196. package/lib/typescript/web/tools/NodeManager.d.ts +2 -2
  197. package/package.json +17 -14
  198. package/src/RNGestureHandlerModule.macos.ts +2 -2
  199. package/src/RNGestureHandlerModule.web.ts +2 -2
  200. package/src/RNGestureHandlerModule.windows.ts +140 -0
  201. package/src/components/DrawerLayout.tsx +22 -12
  202. package/src/components/Swipeable.tsx +16 -13
  203. package/src/components/touchables/TouchableOpacity.tsx +1 -1
  204. package/src/gestureHandlerRootHOC.tsx +4 -1
  205. package/src/getShadowNodeFromRef.ts +3 -3
  206. package/src/handlers/LongPressGestureHandler.ts +3 -1
  207. package/src/handlers/TapGestureHandler.ts +3 -1
  208. package/src/handlers/createHandler.tsx +13 -15
  209. package/src/handlers/gestureHandlerCommon.ts +9 -4
  210. package/src/handlers/gestureHandlerTypesCompat.ts +34 -17
  211. package/src/handlers/gestures/GestureDetector.tsx +117 -44
  212. package/src/handlers/gestures/eventReceiver.ts +2 -1
  213. package/src/handlers/gestures/gesture.ts +8 -12
  214. package/src/handlers/gestures/longPressGesture.ts +1 -0
  215. package/src/handlers/gestures/tapGesture.ts +1 -0
  216. package/src/jestUtils/jestUtils.ts +3 -4
  217. package/src/web/detectors/RotationGestureDetector.ts +2 -1
  218. package/src/web/handlers/FlingGestureHandler.ts +2 -3
  219. package/src/web/handlers/GestureHandler.ts +30 -11
  220. package/src/web/handlers/LongPressGestureHandler.ts +0 -3
  221. package/src/web/handlers/ManualGestureHandler.ts +10 -1
  222. package/src/web/handlers/NativeViewGestureHandler.ts +0 -2
  223. package/src/web/handlers/PanGestureHandler.ts +0 -6
  224. package/src/web/handlers/PinchGestureHandler.ts +0 -2
  225. package/src/web/handlers/RotationGestureHandler.ts +2 -5
  226. package/src/web/handlers/TapGestureHandler.ts +0 -3
  227. package/src/web/interfaces.ts +3 -0
  228. package/src/web/tools/InteractionManager.ts +2 -3
  229. package/src/web_hammer/GestureHandler.ts +6 -8
  230. package/src/web_hammer/NodeManager.ts +3 -1
  231. package/src/web_hammer/PanGestureHandler.ts +12 -6
  232. package/android/lib/build.gradle +0 -28
@@ -12,8 +12,8 @@
12
12
 
13
13
  #import <React/RCTConvert.h>
14
14
 
15
- // RNBetterTapGestureRecognizer extends UIGestureRecognizer instead of UITapGestureRecognizer
16
- // because the latter does not allow for parameters like maxDelay, maxDuration, minPointers,
15
+ // RNBetterTapGestureRecognizer extends UIGestureRecognizer instead of UITapGestureRecognizer
16
+ // because the latter does not allow for parameters like maxDelay, maxDuration, minPointers,
17
17
  // maxDelta to be configured. Using our custom implementation of tap recognizer we are able
18
18
  // to support these.
19
19
 
@@ -27,7 +27,7 @@
27
27
  @property (nonatomic) CGFloat maxDeltaY;
28
28
  @property (nonatomic) NSInteger minPointers;
29
29
 
30
- - (id)initWithGestureHandler:(RNGestureHandler*)gestureHandler;
30
+ - (id)initWithGestureHandler:(RNGestureHandler *)gestureHandler;
31
31
 
32
32
  @end
33
33
 
@@ -43,7 +43,7 @@ static const NSInteger defaultMinPointers = 1;
43
43
  static const CGFloat defaultMaxDelay = 0.2;
44
44
  static const NSTimeInterval defaultMaxDuration = 0.5;
45
45
 
46
- - (id)initWithGestureHandler:(RNGestureHandler*)gestureHandler
46
+ - (id)initWithGestureHandler:(RNGestureHandler *)gestureHandler
47
47
  {
48
48
  if ((self = [super initWithTarget:gestureHandler action:@selector(handleGesture:)])) {
49
49
  _gestureHandler = gestureHandler;
@@ -73,7 +73,7 @@ static const NSTimeInterval defaultMaxDuration = 0.5;
73
73
  {
74
74
  [super touchesBegan:touches withEvent:event];
75
75
  [_gestureHandler.pointerTracker touchesBegan:touches withEvent:event];
76
-
76
+
77
77
  if (_tapsSoFar == 0) {
78
78
  // this recognizer sends UNDETERMINED -> BEGAN state change event before gestureRecognizerShouldBegin
79
79
  // is called (it resets the gesture handler), making it send whatever the last known state as oldState
@@ -100,28 +100,29 @@ static const NSTimeInterval defaultMaxDuration = 0.5;
100
100
  {
101
101
  [super touchesMoved:touches withEvent:event];
102
102
  [_gestureHandler.pointerTracker touchesMoved:touches withEvent:event];
103
-
103
+
104
104
  NSInteger numberOfTouches = [touches count];
105
105
  if (numberOfTouches > _maxNumberOfTouches) {
106
106
  _maxNumberOfTouches = numberOfTouches;
107
107
  }
108
-
108
+
109
109
  if (self.state != UIGestureRecognizerStatePossible) {
110
110
  return;
111
111
  }
112
-
112
+
113
113
  if ([self shouldFailUnderCustomCriteria]) {
114
114
  self.state = UIGestureRecognizerStateFailed;
115
115
  [self triggerAction];
116
116
  [self reset];
117
117
  return;
118
118
  }
119
-
119
+
120
120
  self.state = UIGestureRecognizerStatePossible;
121
121
  [self triggerAction];
122
122
  }
123
123
 
124
- - (CGPoint)translationInView {
124
+ - (CGPoint)translationInView
125
+ {
125
126
  CGPoint currentPosition = [self locationInView:self.view.window];
126
127
  return CGPointMake(currentPosition.x - _initPosition.x, currentPosition.y - _initPosition.y);
127
128
  }
@@ -133,7 +134,7 @@ static const NSTimeInterval defaultMaxDuration = 0.5;
133
134
  return YES;
134
135
  }
135
136
  }
136
-
137
+
137
138
  CGPoint trans = [self translationInView];
138
139
  if (TEST_MAX_IF_NOT_NAN(fabs(trans.x), _maxDeltaX)) {
139
140
  return YES;
@@ -151,7 +152,7 @@ static const NSTimeInterval defaultMaxDuration = 0.5;
151
152
  {
152
153
  [super touchesEnded:touches withEvent:event];
153
154
  [_gestureHandler.pointerTracker touchesEnded:touches withEvent:event];
154
-
155
+
155
156
  if (_numberOfTaps == _tapsSoFar && _maxNumberOfTouches >= _minPointers) {
156
157
  self.state = UIGestureRecognizerStateEnded;
157
158
  [self reset];
@@ -164,7 +165,7 @@ static const NSTimeInterval defaultMaxDuration = 0.5;
164
165
  {
165
166
  [super touchesCancelled:touches withEvent:event];
166
167
  [_gestureHandler.pointerTracker touchesCancelled:touches withEvent:event];
167
-
168
+
168
169
  self.state = UIGestureRecognizerStateCancelled;
169
170
  [self reset];
170
171
  }
@@ -186,7 +187,7 @@ static const NSTimeInterval defaultMaxDuration = 0.5;
186
187
  @end
187
188
 
188
189
  @implementation RNTapGestureHandler {
189
- RNGestureHandlerEventExtraData * _lastData;
190
+ RNGestureHandlerEventExtraData *_lastData;
190
191
  }
191
192
 
192
193
  - (instancetype)initWithTag:(NSNumber *)tag
@@ -201,7 +202,7 @@ static const NSTimeInterval defaultMaxDuration = 0.5;
201
202
  {
202
203
  [super resetConfig];
203
204
  RNBetterTapGestureRecognizer *recognizer = (RNBetterTapGestureRecognizer *)_recognizer;
204
-
205
+
205
206
  recognizer.numberOfTaps = defaultNumberOfTaps;
206
207
  recognizer.minPointers = defaultMinPointers;
207
208
  recognizer.maxDeltaX = NAN;
@@ -215,22 +216,22 @@ static const NSTimeInterval defaultMaxDuration = 0.5;
215
216
  {
216
217
  [super configure:config];
217
218
  RNBetterTapGestureRecognizer *recognizer = (RNBetterTapGestureRecognizer *)_recognizer;
218
-
219
+
219
220
  APPLY_INT_PROP(numberOfTaps);
220
221
  APPLY_INT_PROP(minPointers);
221
222
  APPLY_FLOAT_PROP(maxDeltaX);
222
223
  APPLY_FLOAT_PROP(maxDeltaY);
223
-
224
+
224
225
  id prop = config[@"maxDelayMs"];
225
226
  if (prop != nil) {
226
227
  recognizer.maxDelay = [RCTConvert CGFloat:prop] / 1000.0;
227
228
  }
228
-
229
+
229
230
  prop = config[@"maxDurationMs"];
230
231
  if (prop != nil) {
231
232
  recognizer.maxDuration = [RCTConvert CGFloat:prop] / 1000.0;
232
233
  }
233
-
234
+
234
235
  prop = config[@"maxDist"];
235
236
  if (prop != nil) {
236
237
  CGFloat dist = [RCTConvert CGFloat:prop];
@@ -240,12 +241,12 @@ static const NSTimeInterval defaultMaxDuration = 0.5;
240
241
 
241
242
  - (RNGestureHandlerEventExtraData *)eventExtraData:(UIGestureRecognizer *)recognizer
242
243
  {
243
- if (recognizer.state == UIGestureRecognizerStateEnded) {
244
- return _lastData;
245
- }
246
-
247
- _lastData = [super eventExtraData:recognizer];
244
+ if (recognizer.state == UIGestureRecognizerStateEnded) {
248
245
  return _lastData;
246
+ }
247
+
248
+ _lastData = [super eventExtraData:recognizer];
249
+ return _lastData;
249
250
  }
250
251
 
251
252
  - (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer
@@ -257,9 +258,8 @@ static const NSTimeInterval defaultMaxDuration = 0.5;
257
258
  RNGestureHandlerState savedState = _lastState;
258
259
  BOOL shouldBegin = [super gestureRecognizerShouldBegin:gestureRecognizer];
259
260
  _lastState = savedState;
260
-
261
+
261
262
  return shouldBegin;
262
263
  }
263
264
 
264
265
  @end
265
-
@@ -1,28 +1,39 @@
1
1
  #import "RNGestureHandlerActionType.h"
2
- #import "RNGestureHandlerState.h"
3
2
  #import "RNGestureHandlerDirection.h"
4
3
  #import "RNGestureHandlerEvents.h"
5
4
  #import "RNGestureHandlerPointerTracker.h"
5
+ #import "RNGestureHandlerState.h"
6
6
 
7
7
  #import <Foundation/Foundation.h>
8
- #import <UIKit/UIKit.h>
9
8
  #import <React/RCTConvert.h>
9
+ #import <UIKit/UIKit.h>
10
10
 
11
11
  #define VEC_LEN_SQ(pt) (pt.x * pt.x + pt.y * pt.y)
12
12
  #define TEST_MIN_IF_NOT_NAN(value, limit) \
13
- (!isnan(limit) && ((limit < 0 && value <= limit) || (limit >= 0 && value >= limit)))
14
-
15
- #define TEST_MAX_IF_NOT_NAN(value, max) \
16
- (!isnan(max) && ((max < 0 && value < max) || (max >= 0 && value > max)))
17
-
18
- #define APPLY_PROP(recognizer, config, type, prop, propName) do { \
19
- id value = config[propName]; \
20
- if (value != nil) { recognizer.prop = [RCTConvert type:value]; }\
21
- } while(0)
22
-
23
- #define APPLY_FLOAT_PROP(prop) do { APPLY_PROP(recognizer, config, CGFloat, prop, @#prop); } while(0)
24
- #define APPLY_INT_PROP(prop) do { APPLY_PROP(recognizer, config, NSInteger, prop, @#prop); } while(0)
25
- #define APPLY_NAMED_INT_PROP(prop, propName) do { APPLY_PROP(recognizer, config, NSInteger, prop, propName); } while(0)
13
+ (!isnan(limit) && ((limit < 0 && value <= limit) || (limit >= 0 && value >= limit)))
14
+
15
+ #define TEST_MAX_IF_NOT_NAN(value, max) (!isnan(max) && ((max < 0 && value < max) || (max >= 0 && value > max)))
16
+
17
+ #define APPLY_PROP(recognizer, config, type, prop, propName) \
18
+ do { \
19
+ id value = config[propName]; \
20
+ if (value != nil) { \
21
+ recognizer.prop = [RCTConvert type:value]; \
22
+ } \
23
+ } while (0)
24
+
25
+ #define APPLY_FLOAT_PROP(prop) \
26
+ do { \
27
+ APPLY_PROP(recognizer, config, CGFloat, prop, @ #prop); \
28
+ } while (0)
29
+ #define APPLY_INT_PROP(prop) \
30
+ do { \
31
+ APPLY_PROP(recognizer, config, NSInteger, prop, @ #prop); \
32
+ } while (0)
33
+ #define APPLY_NAMED_INT_PROP(prop, propName) \
34
+ do { \
35
+ APPLY_PROP(recognizer, config, NSInteger, prop, propName); \
36
+ } while (0)
26
37
 
27
38
  @protocol RNGestureHandlerEventEmitter
28
39
 
@@ -30,7 +41,6 @@ if (value != nil) { recognizer.prop = [RCTConvert type:value]; }\
30
41
 
31
42
  @end
32
43
 
33
-
34
44
  @protocol RNRootViewGestureRecognizerDelegate <UIGestureRecognizerDelegate>
35
45
 
36
46
  - (void)gestureRecognizer:(nullable UIGestureRecognizer *)gestureRecognizer
@@ -38,12 +48,11 @@ if (value != nil) { recognizer.prop = [RCTConvert type:value]; }\
38
48
 
39
49
  @end
40
50
 
41
-
42
51
  @interface RNGestureHandler : NSObject <UIGestureRecognizerDelegate> {
43
-
44
- @protected UIGestureRecognizer *_recognizer;
45
- @protected RNGestureHandlerState _lastState;
46
-
52
+ @protected
53
+ UIGestureRecognizer *_recognizer;
54
+ @protected
55
+ RNGestureHandlerState _lastState;
47
56
  }
48
57
 
49
58
  + (nullable RNGestureHandler *)findGestureHandlerByRecognizer:(nonnull UIGestureRecognizer *)recognizer;
@@ -76,8 +85,6 @@ if (value != nil) { recognizer.prop = [RCTConvert type:value]; }\
76
85
  forViewWithTag:(nonnull NSNumber *)reactTag
77
86
  withExtraData:(nonnull RNGestureHandlerEventExtraData *)extraData;
78
87
  - (void)sendEvent:(nonnull RNGestureHandlerStateChange *)event;
79
- - (void)sendTouchEventInState:(RNGestureHandlerState)state
80
- forViewWithTag:(nonnull NSNumber *)reactTag;
88
+ - (void)sendTouchEventInState:(RNGestureHandlerState)state forViewWithTag:(nonnull NSNumber *)reactTag;
81
89
 
82
90
  @end
83
-