GiampaoloGabba / Xamarin.Plugin.SharedTransitions

Shared Element Transitions between pages in Xamarin.Forms (IOS/Android)
MIT License
414 stars 57 forks source link

Shell navigation not working and freezes #64

Open jtorvald opened 3 years ago

jtorvald commented 3 years ago

First of all thanks for making this awesome plugin!

Bug Information

Version Number of Plugin: 2.4.0 Device Tested On: Simulator Tested On: iPod Touch iOS 14.4 Version of VS: Visual Studio Community 2019 for Mac, Version 8.8.6 (build 15) Xamarin.Forms: 4.8 / 5.0 Xamarin.Mac Version: 7.2.0.3 (Visual Studio Community) Hash: c51fabee8 Branch: xcode12.3 Build date: 2020-12-10 21:05:04-0500

Xamarin.iOS Version: 14.8.0.3 (Visual Studio Community) Hash: c51fabee8 Branch: xcode12.3 Build date: 2020-12-10 21:05:05-0500

Steps to reproduce the Behavior

In my project I've issues getting it to work. I had some cases that it did "something" but not what I wanted. It transitions the page (with Flip for example) just the images that I had the .Name on didn't work. When I set the name on the whole ContentView or Grid, I see something happening, but not good. And sometimes the events fire, sometimes not, also the detailpage freezes which seems a bit similar to #63.

I can't upload that project so I tried to isolate the issue. I created a small project where you can see not the exact behavior but something similar with the freezing part.

Steps:

  1. If you open the project (iOS) and run it
  2. You can click one of the "This is an item description" items in the list. (page flips and animation works correctly
  3. Click back (works)
  4. Click 'Add it now!' (page flips)
  5. FROZEN

If you'd click "Add it now!" first, it works the first time, but not the second time.

I don't know if this has to do with the ContentViews or not. I also use the code in ContentViews in my other project.

Expected Behavior

I expect it to work.

Actual Behavior

Freezing

Project

Debug.zip

jtorvald commented 3 years ago

A little more info, not sure if it has to do with it: What I notice is that I see "From event" and "From override" both transition started. Does it start twice? CurrentTransition Changed: Push Project.Views.Page1 Project.Views.Page2 From event: Transition started - Project.Views.Page1|Project.Views.Page2|Push From override: Transition started - Project.Views.Page1|Project.Views.Page2|Push

GiampaoloGabba commented 3 years ago

Hi, thank you for your repro, i'm taking a look right now. Regarding your question about events, the transition will start only once. "from event" and "from override" are just different techniques you can use to hook in the transition lifecycle. if you use both, you will get the event notification twice