Skip to content

fix(iOS): preserve RefreshControl haptics after remount - #57970

Closed
CHANDRAMOHANnegi wants to merge 1 commit into
react:mainfrom
CHANDRAMOHANnegi:fix/refresh-control-remount-haptics
Closed

fix(iOS): preserve RefreshControl haptics after remount#57970
CHANDRAMOHANnegi wants to merge 1 commit into
react:mainfrom
CHANDRAMOHANnegi:fix/refresh-control-remount-haptics

Conversation

@CHANDRAMOHANnegi

@CHANDRAMOHANnegi CHANDRAMOHANnegi commented Aug 16, 2026

Copy link
Copy Markdown

Summary

Fixes #57843.

When a RCTPullToRefreshViewComponentView is recycled, it creates a new UIRefreshControl. This control is already idle, but the recycled-props path calls endRefreshing before it is attached to the scroll view.

Avoid that unnecessary state transition while preserving normal refreshing prop updates.

Changelog:

[iOS] [FIXED] - Preserve pull-to-refresh haptics after RefreshControl remounts

Test Plan

  1. Run the reproducer from Refresh haptics is broken after RefreshControl remount #57843 on a physical iPhone.
  2. Pull to refresh and confirm haptic feedback occurs.
  3. Remount the RefreshControl.
  4. Pull to refresh again.
  5. Confirm haptic feedback still occurs after the remount.

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Aug 16, 2026
@facebook-github-tools facebook-github-tools Bot added the Shared with Meta Applied via automation to indicate that an Issue or Pull Request has been shared with the team. label Aug 16, 2026
@CHANDRAMOHANnegi
CHANDRAMOHANnegi marked this pull request as draft August 16, 2026 07:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Shared with Meta Applied via automation to indicate that an Issue or Pull Request has been shared with the team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refresh haptics is broken after RefreshControl remount

1 participant