wix / wix/react-native-navigation
Modal with modalPresentationStyle=OptionsModalPresentationStyle breaks Navigation.push if opened In parallel
Nobody has claimed this yet.
- Dominant language
- MDX
- Stars
- 13.2k
- Forks
- 2.6k
- Avg merge
- 6d 2h
- Merged PRs (30d)
- 1
Description
What happened?
Navigation.showModal modalPresentationStyle:OptionsModalPresentationStyle.overCurrentContext is broken when trying to push the new screen in parallel
https://github.com/user-attachments/assets/035836b0-38b4-4903-a52b-524d5a658bcd
https://github.com/user-attachments/assets/13cc987f-6c6e-47bd-993e-51741cfd495f
What was the expected behaviour?
It should work corretly and push a screen even without waiting for modal to open
Was it tested on latest react-native-navigation?
- I have tested this issue on the latest react-native-navigation release and it still reproduces.
Help us reproduce this issue!
repo - https://github.com/Belobopka/wix-rnn-modal-bug1 sometimes it works but one in 10 cases
In what environment did this happen?
React Native Navigation version: 8.7.5
React Native version: 0.80.3
Has Fabric (React Native's new rendering system) enabled: (yes/no) YES
Node version: 20.19.6
Device model: IPhone 15 pro
iOS version: 18.1(but I think it reproducible on more newer versions)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked reproduction repository, wix-rnn-modal-bug1, and reproduce the intermittent failure using React Native Navigation 8.7.5 with Fabric enabled. Trace the parallel modal and Navigation.push sequence; done means the screen is pushed reliably without waiting for the modal to open, including the reported iOS environment.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- react-native
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100