software-mansion / software-mansion/react-native-screens

Focus issue on iOS when a "Reduce Motion" is turn on

Open
#4,133 6 comments 1 reaction 1 assignee View on GitHub

@kacperzolkiewski is already working on this.

Since Sep 17, 2026.

platform:ios repro-provided
Dominant language
TypeScript
Stars
3.7k
Forks
714
Avg merge
2d 23h
Merged PRs (30d)
71

Description

Description

Based on this issue: https://github.com/retyui/react-native-confirmation-code-field/issues/258

important settings:

  1. iOS Settings -> Accessibility -> Motion ->
    1.2 Reduce Motion ON
    1.3 Prefer Cross-Fade Transitions ON.

When users navigate from screen 1 (where it has a focused input) to the screen 2 with a <TextInput autoFocus />

In logs you can, see the issue:

  1. User moves a focus to the "input 1"
  2. LOG ---onFocus 1
  3. User navigates to the "screen 2"
  4. LOG ---onBlur 1
  5. LOG ---onFocus 2
  6. LOG ---onBlur 2
  7. LOG ---onFocus 1 // <--- Hmm... focus has landed on input from screen 1 ? how ?

https://github.com/user-attachments/assets/9490532a-715d-4286-9cc2-abf0aa1dd222

Steps to reproduce

Steps you can find here: https://github.com/rozhkovs/cross-fade-transitions-and-text-input-ios

Snack or a link to a repository

https://github.com/rozhkovs/cross-fade-transitions-and-text-input-ios

Screens version

4.25.2

React Native version

0.85.3

Platforms

iOS

JavaScript runtime

Hermes

Workflow

None

Architecture

None

Build type

None

Device

None

Device model

No response

Acknowledgements

Yes

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.