@@ -397,19 +397,19 @@ open class GestureHandler<ConcreteGestureHandlerT : GestureHandler<ConcreteGestu
397
397
}
398
398
}
399
399
400
- private fun dispatchTouchDownEvent (event : MotionEvent ) {
400
+ private fun dispatchTouchDownEvent (event : MotionEvent , sourceEvent : MotionEvent ) {
401
401
changedTouchesPayload = null
402
402
touchEventType = RNGestureHandlerTouchEvent .EVENT_TOUCH_DOWN
403
403
val pointerId = event.getPointerId(event.actionIndex)
404
- val offsetX = event .rawX - event .x
405
- val offsetY = event .rawY - event .y
404
+ val offsetX = sourceEvent .rawX - sourceEvent .x
405
+ val offsetY = sourceEvent .rawY - sourceEvent .y
406
406
407
407
trackedPointers[pointerId] = PointerData (
408
408
pointerId,
409
409
event.getX(event.actionIndex),
410
410
event.getY(event.actionIndex),
411
- event .getX(event.actionIndex) + offsetX - windowOffset[0 ],
412
- event .getY(event.actionIndex) + offsetY - windowOffset[1 ],
411
+ sourceEvent .getX(event.actionIndex) + offsetX - windowOffset[0 ],
412
+ sourceEvent .getY(event.actionIndex) + offsetY - windowOffset[1 ],
413
413
)
414
414
trackedPointersCount++
415
415
addChangedPointer(trackedPointers[pointerId]!! )
@@ -418,20 +418,20 @@ open class GestureHandler<ConcreteGestureHandlerT : GestureHandler<ConcreteGestu
418
418
dispatchTouchEvent()
419
419
}
420
420
421
- private fun dispatchTouchUpEvent (event : MotionEvent ) {
421
+ private fun dispatchTouchUpEvent (event : MotionEvent , sourceEvent : MotionEvent ) {
422
422
extractAllPointersData()
423
423
changedTouchesPayload = null
424
424
touchEventType = RNGestureHandlerTouchEvent .EVENT_TOUCH_UP
425
425
val pointerId = event.getPointerId(event.actionIndex)
426
- val offsetX = event .rawX - event .x
427
- val offsetY = event .rawY - event .y
426
+ val offsetX = sourceEvent .rawX - sourceEvent .x
427
+ val offsetY = sourceEvent .rawY - sourceEvent .y
428
428
429
429
trackedPointers[pointerId] = PointerData (
430
430
pointerId,
431
431
event.getX(event.actionIndex),
432
432
event.getY(event.actionIndex),
433
- event .getX(event.actionIndex) + offsetX - windowOffset[0 ],
434
- event .getY(event.actionIndex) + offsetY - windowOffset[1 ],
433
+ sourceEvent .getX(event.actionIndex) + offsetX - windowOffset[0 ],
434
+ sourceEvent .getY(event.actionIndex) + offsetY - windowOffset[1 ],
435
435
)
436
436
addChangedPointer(trackedPointers[pointerId]!! )
437
437
trackedPointers[pointerId] = null
@@ -440,11 +440,11 @@ open class GestureHandler<ConcreteGestureHandlerT : GestureHandler<ConcreteGestu
440
440
dispatchTouchEvent()
441
441
}
442
442
443
- private fun dispatchTouchMoveEvent (event : MotionEvent ) {
443
+ private fun dispatchTouchMoveEvent (event : MotionEvent , sourceEvent : MotionEvent ) {
444
444
changedTouchesPayload = null
445
445
touchEventType = RNGestureHandlerTouchEvent .EVENT_TOUCH_MOVE
446
- val offsetX = event .rawX - event .x
447
- val offsetY = event .rawY - event .y
446
+ val offsetX = sourceEvent .rawX - sourceEvent .x
447
+ val offsetY = sourceEvent .rawY - sourceEvent .y
448
448
var pointersAdded = 0
449
449
450
450
for (i in 0 until event.pointerCount) {
@@ -454,8 +454,8 @@ open class GestureHandler<ConcreteGestureHandlerT : GestureHandler<ConcreteGestu
454
454
if (pointer.x != event.getX(i) || pointer.y != event.getY(i)) {
455
455
pointer.x = event.getX(i)
456
456
pointer.y = event.getY(i)
457
- pointer.absoluteX = event .getX(i) + offsetX - windowOffset[0 ]
458
- pointer.absoluteY = event .getY(i) + offsetY - windowOffset[1 ]
457
+ pointer.absoluteX = sourceEvent .getX(i) + offsetX - windowOffset[0 ]
458
+ pointer.absoluteY = sourceEvent .getY(i) + offsetY - windowOffset[1 ]
459
459
460
460
addChangedPointer(pointer)
461
461
pointersAdded++
@@ -471,15 +471,15 @@ open class GestureHandler<ConcreteGestureHandlerT : GestureHandler<ConcreteGestu
471
471
}
472
472
}
473
473
474
- fun updatePointerData (event : MotionEvent ) {
474
+ fun updatePointerData (event : MotionEvent , sourceEvent : MotionEvent ) {
475
475
if (event.actionMasked == MotionEvent .ACTION_DOWN || event.actionMasked == MotionEvent .ACTION_POINTER_DOWN ) {
476
- dispatchTouchDownEvent(event)
477
- dispatchTouchMoveEvent(event)
476
+ dispatchTouchDownEvent(event, sourceEvent )
477
+ dispatchTouchMoveEvent(event, sourceEvent )
478
478
} else if (event.actionMasked == MotionEvent .ACTION_UP || event.actionMasked == MotionEvent .ACTION_POINTER_UP ) {
479
- dispatchTouchMoveEvent(event)
480
- dispatchTouchUpEvent(event)
479
+ dispatchTouchMoveEvent(event, sourceEvent )
480
+ dispatchTouchUpEvent(event, sourceEvent )
481
481
} else if (event.actionMasked == MotionEvent .ACTION_MOVE ) {
482
- dispatchTouchMoveEvent(event)
482
+ dispatchTouchMoveEvent(event, sourceEvent )
483
483
}
484
484
}
485
485
0 commit comments