Skip to content

Commit d6a758b

Browse files
committed
Merge branch 'main' into @mbert/bump-bob
2 parents 3ddfe76 + 757265d commit d6a758b

1 file changed

Lines changed: 5 additions & 10 deletions

File tree

packages/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.kt

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -440,7 +440,11 @@ class RNGestureHandlerButtonViewManager :
440440
val isResponder = tryGrabbingResponder()
441441
if (isResponder) {
442442
isTouched = true
443+
// when setPressed(true) is called before canBegin it will not call super.setPressed
444+
// in this case we call it here
445+
setPressed(true)
443446
}
447+
444448
return isResponder
445449
}
446450

@@ -515,16 +519,6 @@ class RNGestureHandlerButtonViewManager :
515519
}
516520

517521
override fun setPressed(pressed: Boolean) {
518-
// there is a possibility of this method being called before NativeViewGestureHandler has
519-
// opportunity to call canStart, in that case we need to grab responder in case the gesture
520-
// will activate
521-
// when canStart is called eventually, tryGrabbingResponder will return true if the button
522-
// already is a responder
523-
if (pressed) {
524-
if (tryGrabbingResponder()) {
525-
soundResponder = this
526-
}
527-
}
528522
// button can be pressed alongside other button if both are non-exclusive and it doesn't have
529523
// any pressed children (to prevent pressing the parent when children is pressed).
530524
val canBePressedAlongsideOther = !exclusive && touchResponder?.exclusive != true && !isChildTouched()
@@ -535,6 +529,7 @@ class RNGestureHandlerButtonViewManager :
535529
isTouched = pressed
536530
super.setPressed(pressed)
537531
}
532+
538533
if (!pressed && touchResponder === this) {
539534
// if the responder is no longer pressed we release button responder
540535
isTouched = false

0 commit comments

Comments
 (0)