Skip to content

Conversation

brianacnguyen
Copy link
Contributor

@brianacnguyen brianacnguyen commented Oct 17, 2025

Description

Changelog

CHANGELOG entry:

Related issues

Fixes:

Manual testing steps

Feature: my feature name

  Scenario: user [verb for user action]
    Given [describe expected initial app state]

    When user [verb for user action]
    Then [describe expected outcome]

Screenshots/Recordings

Before

After

Pre-merge author checklist

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

Note

Refines gesture handling across buttons/list items and tunes BottomSheet pan thresholds to improve responsiveness and interaction with other gestures.

  • Gestures (Android components):
    • ButtonBase / ListItemSelect / ListItemMultiSelect:
      • Add native gesture with disallowInterruption(true) and use Gesture.Simultaneous(native, tap).
      • Shorten tap maxDuration to 200 and remove requireExternalGestureToFail.
      • Accessibility: default isScreenReaderEnabled state to false, add error fallback, and only use TouchableOpacity onPress when accessibility is explicitly true.
  • BottomSheetDialog:
    • Configure PanGestureHandler with shouldCancelWhenOutside=false, activeOffsetY={[-10, 10]}, and activeOffsetX={[-50, 50]} to reduce unintended cancellations and improve gesture activation.

Written by Cursor Bugbot for commit 183c4cf. This will update automatically on new commits. Configure here.

@brianacnguyen brianacnguyen requested a review from a team as a code owner October 17, 2025 17:07
Copy link
Contributor

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

@metamaskbot metamaskbot added the team-design-system All issues relating to design system in Mobile label Oct 17, 2025
cursor[bot]

This comment was marked as outdated.

@sleepytanya
Copy link
Contributor

sleepytanya commented Oct 17, 2025

@brianacnguyen
QA builds https://app.bitrise.io/app/be69d4368ee7e86d/installable-artifacts/f764ec5477b1daa4

  • can't click Confirm / Cancel in Solana Send
  • Got it in Perps is unresponsive
  • sometimes Add Funds for certain tokens also appears to be unresponsive (XPR-USD), intermittent
  • token switch works as expected in Buy-Withdraw, Deposit doesn't load (unrelated to current PR)
touch.mov

cursor[bot]

This comment was marked as outdated.

isAccessibilityEnabled !== false && !isDisabled ? onPress : undefined
} // Use TouchableOpacity onPress when accessibility is ON or UNKNOWN (safer for accessibility users)
isAccessibilityEnabled === true && !isDisabled ? onPress : undefined
} // Use TouchableOpacity onPress only when accessibility is explicitly ON (safer for accessibility users)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: Accessibility State Causes Component Unresponsiveness

Initializing isAccessibilityEnabled to false and changing the TouchableOpacity onPress condition to isAccessibilityEnabled === true removes a safe fallback. This causes components to rely solely on the gesture handler when accessibility state is false or unknown, leading to unresponsive buttons and list items, especially during initial loading or for accessibility users.

Additional Locations (2)

Fix in Cursor Fix in Web

Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
7.4% Coverage on New Code (required ≥ 80%)

See analysis details on SonarQube Cloud

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size-S team-design-system All issues relating to design system in Mobile

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants