From 45043f1739ebc43a582419161d553f23ec1be868 Mon Sep 17 00:00:00 2001 From: Christian Schabesberger Date: Wed, 4 Sep 2024 10:58:01 +0200 Subject: [PATCH] filter lefat and right gestures in GestureSurface as these are not used by interact with system UI --- .../newplayer/ui/videoplayer/gesture_ui/GestureSurface.kt | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/new-player/src/main/java/net/newpipe/newplayer/ui/videoplayer/gesture_ui/GestureSurface.kt b/new-player/src/main/java/net/newpipe/newplayer/ui/videoplayer/gesture_ui/GestureSurface.kt index 99266b3..9f74b1a 100644 --- a/new-player/src/main/java/net/newpipe/newplayer/ui/videoplayer/gesture_ui/GestureSurface.kt +++ b/new-player/src/main/java/net/newpipe/newplayer/ui/videoplayer/gesture_ui/GestureSurface.kt @@ -37,6 +37,7 @@ import androidx.compose.ui.input.pointer.pointerInteropFilter import kotlinx.coroutines.Job import kotlinx.coroutines.delay import kotlinx.coroutines.launch +import kotlin.math.abs private const val MULTITAB_MODE_DELAY: Long = 300 @@ -115,9 +116,14 @@ fun GestureSurface( val handleMove = { event: MotionEvent, lambda: (movement: TouchedPosition) -> Unit -> val currentTouchedPosition = TouchedPosition(event.x, event.y) val movement = currentTouchedPosition - lastTouchedPosition + lastTouchedPosition = currentTouchedPosition moveOccured = true - lambda(movement) + + // filter out left and right movements as these are not important for the app + if(abs(movement.x) <= abs(movement.y)) { + lambda(movement) + } true }