-
Notifications
You must be signed in to change notification settings - Fork 410
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
[BUG] Repeatedly displaying and hiding the popup at short intervals does not display the Popup as intended on iOS. #1213
Comments
By changing the Community Toolkit code as follows, the problem was resolved, [MauiPopup.macios.cs]
[PopupHandler.macios.cs]
RPReplay_Final1686130010.MP4Changed to check the value of IsBeginPresented property and IsBeginDismissed |
It might be worth looking over what @brminnick is working on in this PR: |
Hi, @bijington |
Hi, @bijington Additional Information: |
Hi, @bijington Can anyone help me determine that I need to check the values of the IsBeingPresented I used the following as a reference when considering a solution. |
Additional Information:
The warning that was output before applying the solution is as follows.
By solving the problem, the warning that was output on the .NET MAUI side is now output. |
Hi, @brminnick |
Hi, @brminnick It turns out that the solution I posted earlier only guarded the occurrence of the problem, not the root solution. |
Thanks for the heads up! I've added linked #1213 to the PR so that it'll be closed when the PR is merged 👍 |
Thank you for linking the issue. |
Is there an existing issue for this?
Did you read the "Reporting a bug" section on Contributing file?
Current Behavior
This issue transfer from from Discussion #1202.
Since I was able to write code that can easily reproduce the problem, I uploaded the source code to github.
I am using Popup to display the indicator. Indicators using Popup are displayed before the
start of processing and closed after the end of processing. The length of the processing varies,
some long, some short.
The Indicator using the Popup is displayed as follows.
The Indicator using the Popup is closed as follows.
pIndicator is an instance of Indicator class that inherits from Popup class and is a class variable.
Popups are managed by class variables, and only one Popup is displayed at a time.
I use it as follows.
If there is no problem, it will be displayed as follows.
If the following warning is displayed, it will be displayed as follows.
Warning: Attempt to dismiss from view controller <CommunityToolkit_Maui_Core_Views_MauiPopup: 0x16c8d4250> while a presentation or dismiss is in progress!
Below is a video of the issue being reproduced.
RPReplay_Final1685603298.MP4
A Indicator using an Popup will appear in a position other than the center of the screen and will not close at all.
The above phenomenon rarely occurs.
As far as I can see from the warnings, it looks like the object was not destroyed immediately after calling the Popup's Close method and is still there.
The problem occurs in both of the repros below.
The former is the reproduction code described in Discussion #1202.
The latter is the reproducible code described in this issue.
https://github.com/cat0363/MauiComm-IssuePopup.git
https://github.com/cat0363/MauiComm-IssuePopup2.git
Expected Behavior
I expected the indicator to show/hide even after calling ShowPopup and Close in succession.
Steps To Reproduce
The steps to reproduce are as follows.
In step 2, the Indicator remains displayed at the bottom of the screen, blocking scrolling.
Link to public reproduction project repository
https://github.com/cat0363/MauiComm-IssuePopup2.git
Environment
Anything else?
No response
The text was updated successfully, but these errors were encountered: