mirror of
https://github.com/signalapp/Signal-Android.git
synced 2025-12-20 19:18:37 +00:00
Fix tap areas in stories viewer.
This commit is contained in:
committed by
jeffrey-signal
parent
8d931391db
commit
d88c8baa83
@@ -31,7 +31,6 @@ import androidx.core.app.ActivityCompat
|
|||||||
import androidx.core.content.ContextCompat
|
import androidx.core.content.ContextCompat
|
||||||
import androidx.core.os.bundleOf
|
import androidx.core.os.bundleOf
|
||||||
import androidx.core.text.util.LinkifyCompat
|
import androidx.core.text.util.LinkifyCompat
|
||||||
import androidx.core.view.GestureDetectorCompat
|
|
||||||
import androidx.core.view.animation.PathInterpolatorCompat
|
import androidx.core.view.animation.PathInterpolatorCompat
|
||||||
import androidx.core.view.doOnNextLayout
|
import androidx.core.view.doOnNextLayout
|
||||||
import androidx.fragment.app.DialogFragment
|
import androidx.fragment.app.DialogFragment
|
||||||
@@ -252,7 +251,18 @@ class StoryViewerPageFragment :
|
|||||||
viewModel::goToPreviousPost
|
viewModel::goToPreviousPost
|
||||||
)
|
)
|
||||||
|
|
||||||
val gestureDetector = GestureDetectorCompat(
|
val parentListener = GestureDetector(
|
||||||
|
requireContext(),
|
||||||
|
ParentGestureListener(
|
||||||
|
singleTapHandler = singleTapHandler
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
storyPageContainer.setOnTouchListener { v, event ->
|
||||||
|
parentListener.onTouchEvent(event)
|
||||||
|
}
|
||||||
|
|
||||||
|
val gestureDetector = GestureDetector(
|
||||||
requireContext(),
|
requireContext(),
|
||||||
StoryGestureListener(
|
StoryGestureListener(
|
||||||
cardWrapper,
|
cardWrapper,
|
||||||
@@ -1363,6 +1373,19 @@ class StoryViewerPageFragment :
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private class ParentGestureListener(
|
||||||
|
private val singleTapHandler: SingleTapHandler
|
||||||
|
) : GestureDetector.SimpleOnGestureListener() {
|
||||||
|
override fun onDown(e: MotionEvent): Boolean {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onSingleTapUp(e: MotionEvent): Boolean {
|
||||||
|
singleTapHandler.onActionUp(e)
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private class StoryGestureListener(
|
private class StoryGestureListener(
|
||||||
private val container: View,
|
private val container: View,
|
||||||
private val singleTapHandler: SingleTapHandler,
|
private val singleTapHandler: SingleTapHandler,
|
||||||
|
|||||||
Reference in New Issue
Block a user