xamarin / Xamarin.Forms

Xamarin.Forms is no longer supported. Migrate your apps to .NET MAUI.
https://aka.ms/xamarin-upgrade
Other
5.62k stars 1.87k forks source link

[Bug] Flyout item navigation behaves different on previous navigating #13219

Open wooooooood opened 3 years ago

wooooooood commented 3 years ago

Description

When you browse the same page when clicking flyout menu, navigating behavior varies depending on how user previously navigated to that page. I think it's kind of weird that flyout navigation acts different in some scenarios. Looks similar with #13208 issue?

Steps to Reproduce

With attached repro,

Does not happen when

  1. Click "Browse" via Flyout
  2. Click "Browse" via Flyout again while you're still in "Browse" page
  3. Log message "Value is null" is not printed

But happens when

  1. Click on the "Move via Shell Navigation" button at "About"
  2. Click "Browse" via Flyout again while you're still in "Browse" page
  3. Log message "Value is null" is printed which can cause TargetInvokeException without null check

Expected Behavior

Flyout item navigating behavior should be same all the time

Actual Behavior

Flyout item navigating behavior differentiates depending on previous navigating

Basic Information

Environment

Microsoft Visual Studio Enterprise 2019
Version 16.8.3
VisualStudio.16.Release/16.8.3+30804.86
Microsoft .NET Framework
Version 4.8.04084

Build Logs

Reproduction Link

Check this out~

Workaround

Adding value null check

jfversluis commented 3 years ago

Had to revert the PR for this since it causes unwanted behavior. We have to reevaluated what to do to fix it properly :)

jfversluis commented 2 years ago

@pictos did you want to have another look at this one? Let me know if you need any more info

pictos commented 2 years ago

@jfversluis Sure thing. I can review it next week. I let you know if I need more info