-
Notifications
You must be signed in to change notification settings - Fork 24.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[0.76] Modals different behaviour on iOS in v0.76 #47694
Comments
Warning Could not parse version: We could not find or parse the version number of React Native in your issue report. Please use the template, and report your version including major, minor, and patch numbers - e.g. 0.76.2. |
Warning Could not parse version: We could not find or parse the version number of React Native in your issue report. Please use the template, and report your version including major, minor, and patch numbers - e.g. 0.76.2. |
I have the same issue. Before 0.76, it worked fine. For example setShowEmailModal(false);
setShowPhoneModal(true); Would work, the email modal would go away and the phone modal would show up. Now, the phone modal can only show up if I do this //setShowEmailModal(false);
setShowPhoneModal(true); Showing it on top of another, which isn't ideal |
Any news on this? |
I have a band-aid solution. It seems that, currently, only one modal can be shown at a time. When you quickly switch from modal1 to modal2, the render breaks. This appears to happen because the animation for modal1 hasn’t completed before modal2 is triggered. To resolve this, you need to add a timeout. The duration (in milliseconds) depends on the animationType of the modal. For example, with animationType set to "none," 10ms works, but if you use the "slide" animation, 500ms is needed. This solution isn't optimal because I’m not sure if the animation speed is consistent across different devices or how the timing might be affected. Unfortunately, there doesn’t seem to be a reliable way to wait for the animation to complete. Hoping a permanent solution is implemented soon! setModal1(false); |
This is not a problem that requires a workaround. The behaviour has simply changed, I haven't experienced layout problems or render breaks. The problem is that the change is a breaking one (not only for my app where I have to remove modals from inside modals or I will see them twice, but for many react native libraries like Stripe), and it's not addressed in the changelog even as a minor. |
This undocumented change impacts many projects we're updating from older versions. It's specific to iOS, while Android continues to function as expected. We require clarification on whether this change will be rectified to facilitate informed decision-making for our projects. |
Exactly. It would be very nice to get an anwser or at least an hint of awareness from the dev team. |
i have similar issues,before RN 0.76 in one page i used 2 modals, edit and add modals.now when i tried to open any modal, first previous modal opening and closing after that if i press buton again modal is opening.its not about being different modal.Example i opened add modal after that i closed.When i want to open add modal its opening and closing for 1 second. |
Imo this is a pretty big undocumented change/issue |
Could #48030 be related? |
Honestly, I'm finding really strange that bug opened three days ago are fixed and instead this post didn't even received an answer. I've only wasted time creating a repo to reproduce something that apparently didn't interest anyone. @cortinico, question for you since I see your activity on recent posts: why are you guys answering to fresh opened bugs and not to posts of weeks ago with 16 comments? Should I reopen this every day in the hope to get someone to have a look on it? |
Because our team is really small and we don't have the capacity to answer to everyone. We offer support as "best effort" meaning that there could be period where we're slower to respond due to team capacity. Currently our team is hyperfocused on fixing New Architecture only bugs, which this one is not the case so that's why it got lower priority.
That specific issue was addressed by a member of the community, which sent a PR, which also fixed the issue. We're more than welcome to receive PRs that close issues like this one, as that's practically the fastest way to get those bugs sorted out. |
Every react native app that use, to say one, Stripe library, can't update to RN 0.76 because of this. Anyway, answering doesn't take so much time. I wasn't wondering why this bug hasn't been resolved, I was wondering why it doesn't seems to interests anyone since the lack of response. Now, at least, I know that someone is aware of this. |
Please note that we also use the GitHub reaction feature (the '👍') to asses how many community users got affected by a bug, and this one had none. Unfortunately with so many open bugs daily, is extremely complicated to distinguish between noise and real bugs |
So, 4 answers saying "the same", with 4 thumbs up, worths nothing if no one add a thumb up to the first post. |
Sadly answer "the same" does nothing other than creating unnecessary noise. We have 500+ issues and we don't look at every single comments. Top level reactions instead can be used to filter with the GitHub issue filter feature. |
Yeah, got it. Again. |
#48065 (just picked the first in line) |
Reopening as the issue is actually not fixed.
We haven't missed it. I answered on this issue 2 weeks after we opened it. There is no SLA on we respond to issue. As I said before, we do have hundreds of open issues and we do our best to answer as many as we can. |
As you wish. |
This issue might caused by this PR: dea5a6c#diff-99db04a88673cd58c6b483a6b9a8ae2e39f85a31307bb6b23547ede14ed067b5R136 I’m not familiar with iOS development, but I guess that when trying to present the second modal, the Below is the relevant error screenshot: I have tested without this change, everything is fine. This PR has already been reverted in the main branch, so if it's not urgent, you can wait for the latest version to be released, and it should resolve the issue. |
Unlikely because the linked PR was included in 0.75 also and @angelica-snowit mentioned that this is a regression 0.75 -> 0.76 |
@cortinico, Do you have any updates on this? |
0.76.4 should contain the fix which solves the root cause of this issue |
Upgraded from 0.76.2 to 0.76.4 and I still have this issue |
@cortinico, After upgrading to 0.76.4, the issue persists. |
Ok then I sadly have no idea what could be causing this issue. It would require further investigation. Any help from the community would be more than welcome |
Hi, If anyone can provide a repo, I can have a look :) |
Description
Before RN v0.76, on iOS, to see a Modal in top of another Modal you had to put the modal inside the first modal.
Now this behavior has changed and it's possible to see the Modal on top of the first Modal even if it's not inside the Modal. It's difficult to explain, but I prepared a clear example.
Enabling or diasbling new architecture doesn't change.
It seems like a bugfix and not a bug, because the new behavior it's pretty better, but I think it should be reported as a breaking change. The effect is that after upgrading to RN 0.76, I started to see double modals appearing since they are repeated inside modal to works on RN < 0.76.
I don't know if this is the same on Android because on Android I don't use modals this way.
Steps to reproduce
Open the example with v0.76 and test the Modals: open Modal 2 and then open Modal 1 with the buttons, you will correctly see Modal 1.
See the difference changing to v0.75: Modal 2 will not open when using the button from inside Modal 1. The only way it's to duplicate the <Modal ...> inside the Modal 2 body.
React Native Version
0.76.1
Affected Platforms
Runtime - iOS
Output of npx react-native info
Stacktrace or Logs
It's not a crash.
Reproducer
angelica-snowit/rn76-modal-example
Screenshots and Videos
No response
The text was updated successfully, but these errors were encountered: