mirror of
https://github.com/null2264/yokai.git
synced 2025-06-21 02:34:39 +00:00
fix(GestureDetector): Prevent crashes caused by firstEvent being null on some devices
This commit is contained in:
parent
1ca914a792
commit
6c1dba1831
2 changed files with 4 additions and 2 deletions
|
@ -44,13 +44,14 @@ class LibraryCategoryGestureDetector(private val controller: LibraryController?)
|
|||
distanceX: Float,
|
||||
distanceY: Float,
|
||||
): Boolean {
|
||||
val firstEvent = e1 ?: return false
|
||||
val controller = controller ?: return false
|
||||
val distance = startingX - e2.x
|
||||
val totalDistanceY = startingY - e2.y
|
||||
controller.binding.libraryGridRecycler.recycler.translationX =
|
||||
if (!cancelled) abs(distance / 50).pow(poa) * -sign(distance / 50) else 0f
|
||||
if (!locked && abs(distance) > 50 && !cancelled) {
|
||||
val ev2 = MotionEvent.obtain(e1)
|
||||
val ev2 = MotionEvent.obtain(firstEvent)
|
||||
ev2.action = MotionEvent.ACTION_CANCEL
|
||||
controller.binding.swipeRefresh.dispatchTouchEvent(ev2)
|
||||
ev2.recycle()
|
||||
|
@ -59,7 +60,7 @@ class LibraryCategoryGestureDetector(private val controller: LibraryController?)
|
|||
cancelled = true
|
||||
return false
|
||||
}
|
||||
return super.onScroll(e1, e2, distanceX, distanceY)
|
||||
return super.onScroll(firstEvent, e2, distanceX, distanceY)
|
||||
}
|
||||
|
||||
override fun onFling(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue