Skip to content
This repository has been archived by the owner on Oct 18, 2023. It is now read-only.

Prism.Plugin.Popups 7.2.0.573 strange behavior with navigation from Popup #106

Closed
KSemenenko opened this issue Aug 23, 2019 · 37 comments · Fixed by #136
Closed

Prism.Plugin.Popups 7.2.0.573 strange behavior with navigation from Popup #106

KSemenenko opened this issue Aug 23, 2019 · 37 comments · Fixed by #136
Labels

Comments

@KSemenenko
Copy link

Hi, I have discovered strange behavior compared to the previous version.
My flow:

  1. NavigateTo ContentPage
  2. From ContentPage NavigateTo PopUpPage
  3. From PopUpPage NavigateTo ContentPage

In in the previous version, when I called NavigateTo with the PopUp page, it turned out that I switched to another page and the popup closed.

Now the popup is closing, but navigation does not happen.

@JohnTraDolta
Copy link

i am able to reproduce this

@JohnTraDolta
Copy link

as a workaround til they fix it you can do this

var currentNavigationProxy = PrismApplicationBase.Current.NavigationProxy;
var NavigationParameters = new NavigationPage(new PageToNavigateTo());
await currentNavigationProxy.PushModalAsync(NavigationParameters);

this worked for me

@dansiegel
Copy link
Owner

please provide a sample that reproduces the issue

@ksevery
Copy link

ksevery commented Sep 5, 2019

@dansiegel Here is a sample that reproduces the issue.
Worth of noting is that if the navigation is executed as await NavigationService.NavigateAsync("myapp:///OtherPage") seems to work, but is not optimal for all cases.

PrismPopupsNavigationIssue.zip

@lypefm
Copy link

lypefm commented Sep 27, 2019

I have the same problem ... I try to navigate from a popup to a page and it just doesn't open.

@andreybel
Copy link

I have same problem
@ksevery when I'm trying to use this syntax:
await NavigationService.NavigateAsync("myapp:///OtherPage")
all next opened pages are not ContentPage.
They are opening as PopupPage (whitout title and tabbar in my case)

@ksevery
Copy link

ksevery commented Oct 2, 2019

@andreybel Keep in mind - the "myapp:///" part of that navigation clears out your whole Navigation Stack and starts over from scratch. If you want to open a page within a NavigationPage, you need to specify that. Same if you're trying to open a page that should be able to navigate back to another page, e.g. if you want to navigate to Page 2, but that page should be able to do back navigation to Page 1, your navigation path will look like this: "myapp:///NavigationPage/Page1/Page2".
Also, please check that you have properly setup Rg.Plugins.Popups as per the docs.

@andreybel
Copy link

I found my mistake
@ksevery Thank you so much!

@jitendrajadav
Copy link

I have a same problem

@ghost
Copy link

ghost commented Oct 21, 2019

I can confirm this issue after updating to 7.2.0.573.

Update: Did some further investigations: the bug is connected to the fix made in this commit. When calling the method base.DoPush(...) before clearing the popup-stack, the navigation is working again.

@JohnTraDolta
Copy link

Is it possible to make a pull request, my work is blocked by this.

Thanks in advance

@ghost
Copy link

ghost commented Oct 21, 2019

Is it possible to make a pull request, my work is blocked by this.

I could not find a proper solution while I investigated the issue. Reverting the commit mentioned above would re-open issue #81 which it should fix, thus I did not create a pull request. Just wanted to support @dansiegel with my findings: maybe it helps him find a solution for this issue.

Temporary fixed my project by copying the source of PopupPageNavigationService.cs into my project and then reverting the changes from this commit.

@JohnTraDolta
Copy link

Okay :)
i guess i could do that...
Thanks :)

@dansiegel
Copy link
Owner

@JohnTraDolta yes it is very much possible to submit a PR... the CI is setup as well so that as soon as any PR is merged you'll be able to pull it from the dev feed

@JohnTraDolta
Copy link

Okay i will look into it when i am off from work today

@MerlinSOI
Copy link

I also noticed that. Even if the popup navigation stack is empty (e.g. I call GoBackAsync previously), I still face the same issue - navigation to the content page is not working...

@ghost
Copy link

ghost commented Nov 22, 2019

@JohnTraDolta Any insights on this issue?

@jitendrajadav
Copy link

I got updated one version "7.2.0.759" but still it won't solved this problem

@nrooban
Copy link

nrooban commented Dec 3, 2019

I believe, Rg.Plugins.Popup had compatibility issues with iOS 13 and they fixed it.
Since Prism.Plugin.Popups depends on Rg.Plugins.Popup. They also updated with the version 7.2+.
But unfortunately, they have not fixed in version 2.2.0.293.

Since Prism.Plugin.Popups fixed in 7.2+ and also its depends on Prism Library version 7.2 project must be updated with Xamarin 4+.

Since Prism V7.2+ wont fire OnNavigatingTo the as per there release note
[https://github.com/PrismLibrary/Prism/releases/tag/v7.2.0.1367]
This cause the issue in old projects.

If Prism.Plugin.Popups can give an update to version 2.2.0.293 with Rg.Plugins.Popup bug fix of iOS 13. we can use the same old Xamarin (V3) and Prism versions 7.1 avoid the major change in our old project(s).

==================================================
In nutshell, We need an update from Prism.Plugin.Popups in the version 2.2.0.293 with Rg.Plugins.Popup bug fix of iOS 13

@dansiegel
Copy link
Owner

@nrooban

  • Prism 7.2 does not target Xamarin.Forms 4+. It targets 3.6 and is tested with everything between 3.6 and the 4.4 preview
  • If there is an issue with Rg.Plugins.Popup, as long as there isn't a breaking change there you should be able to update the reference
  • I don't do service releases for previous versions unless I'm paid for it. It's extra work for which I have no personal interest otherwise.

@nrooban
Copy link

nrooban commented Dec 3, 2019

@dansiegel Thank you for the update. I truly understand that we are using prism for free and we cant expect more service for free.

Just to be cleared. Please let me know that, in order to work prism.plugin.popups perfect in iOS 13 we must use version 7.2 along with Prism 7.2. If yes, We should do other break updates from prism 7.1 to 7.2 if we encountered any issues in our apps.

Am I correct to say that? Please clarify. Thank you

@jitendrajadav
Copy link

Any update on this issue?

@dansiegel
Copy link
Owner

@JohnTraDolta was this something you were still working on?

@JohnTraDolta
Copy link

Yes i'm sorry but i havn't found the time for fix this

@kerberosargos
Copy link

Same problem is here :(

@jitendrajadav
Copy link

Any updated on this issue I am not sure when this issue is going to updated my entire work is blocked due to this problem almost 5 month

@JohnTraDolta JohnTraDolta removed their assignment Feb 6, 2020
@dansiegel
Copy link
Owner

@jitendrajadav a few things here...

  • This is an open source library not a paid product. I work on this is my spare time.
  • Priorities go to issues that affect me, and issues that are affecting my GitHub Sponsors which sadly nobody on this thread is.
  • I do take PRs

@kerberosargos
Copy link

@dansiegel yes your are mostly right and thank you for your good works. But I think you are a not a kind person and selfish man. My suggestion for you please get out from Open Source world. Because you are not working without a coin as I understood.

@ksevery
Copy link

ksevery commented Feb 6, 2020

@kerbooo This is a comment that is not in any way useful to the discussion here. Open Source does not mean the library needs to be fixed by the creator whenever there is an issue. It means other people can contribute to make it better and you don't have to pay to use it, but it comes with the risk of it either being dropped for support or your issue not getting fixed if no one gets around to fixing the specific issue. If you need this to be fixed - grab the library's code, fix the issue and submit a PR. As noted by @dansiegel this library is something he works on in his spare time - he is in no way obliged to work on an issue with it if he has other things he wants to do during said time.
Once again, if you want this issue fixed so badly it's impacting your work - you're free to fix the issue yourself. Or toss a coin to @dansiegel so he fixes it :)

@kerberosargos
Copy link

kerberosargos commented Feb 6, 2020

@ksevery thank you for your explain. There are so many people in the world. Every person is different. @dansiegel is important person because of his works. But he should claim his valuable works. I am learning good things from him but I am not good developer as @dansiegel to solve this issue. I think there are so many people as me. I have read so many comment as which he wrote as above. If you are good as @dansiegel please fix that. We will be glad you too.

@aritchie
Copy link

aritchie commented Feb 6, 2020

@dansiegel gives a TON to the community - many times more than he takes. He's a fantastic guy all round. To call him selfish and not kind @kerbooo is extremely rude, unnecessary, and hypocritical on your part. You don't know him personally. You have zero repos and zero contributions on github. It is you who should leave OSS.

@jitendrajadav you keep complaining you are blocked and asking for updates. Fix it yourself. If you don't know how, why are you using the library in the first place? You can pay Dan to fix it. Honestly, asking for continual updates though, is also extremely rude.

@kerberosargos
Copy link

@aritchie you can say everthing but you can not say hypocritical to me. Because I have wrote as How I felt. Yes I do not have any repo because I am a newbie. @dansiegel is master. I think you too. But masters should be helpfull and stronger.

@dansiegel
Copy link
Owner

dansiegel commented Feb 6, 2020

@kerbooo your comments are incredibly rude and not at all helpful either to the issue at hand or to your goal of putting me in a mood where I want to spend my free time fixing this issue. I could charge for this if I wanted but I choose to make it freely available to help people. If you find my work so helpful then I would suggest you show your gratitude with a monthly contribution as a Sponsor. If you find you need support some of my higher sponsorship levels do come with limited support. Do not confuse any of this with me owing anybody anything, because I don't owe you anything for the thousands of hours I've invested in giving back to the Xamarin Community at my personal expense.

Lastly let me just say that if you continue these unhelpful and toxic comments you will find yourself to be the first and only person banned from my repos.

Repository owner deleted a comment from kerberosargos Feb 7, 2020
Repository owner deleted a comment from nrooban Feb 7, 2020
Repository owner deleted a comment from kerberosargos Feb 7, 2020
Repository owner deleted a comment from andreybel Feb 7, 2020
@ksevery
Copy link

ksevery commented Mar 5, 2020

Hey everyone, I've submitted a PR that fixes the issue, at least in my very conservative testing. If anyone would like to, you can take the branch and test in your own cases so we can find any issues that may come up as a result of the fix. The PR is #136

@JohamVan
Copy link

JohamVan commented Apr 2, 2020

@dansiegel How long should it take for the Nuget package to have these changes?
Thanks advance

@dansiegel
Copy link
Owner

@JohamVan builds are always available via the CI feed within a few minutes of a PR being merged. That said I'll be releasing this on NuGet this morning.

@JohamVan
Copy link

JohamVan commented Apr 6, 2020

@dansiegel thank you very much.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.