void OnModalPopped(object sender, ModalPoppedEventArgs e) { ModalPopped?.Invoke(sender, e.Modal); //_modals.Remove(e.Modal); //var current = _modals.Count > 0 ? _modals[_modals.Count - 1] : null; //current = current ?? (_navPage.Navigation.NavigationStack.Count > 0 ? _navPage.Navigation.NavigationStack[_navPage.Navigation.NavigationStack.Count - 1] : null); var current = PageExtensions.FindCurrentPage(Application.Current.MainPage); if (current is HardwareKeyPage hkPage) { hkPage.OnReappearing(); } }
void OnModalPopped(object sender, ModalPoppedEventArgs e) { ModalPopped?.Invoke(sender, e.Modal); _modals.Remove(e.Modal); System.Diagnostics.Debug.WriteLine("ModalPopped"); var current = _modals.Count > 0 ? _modals[_modals.Count - 1] : null; current = current ?? (_navPage.Navigation.NavigationStack.Count > 0 ? _navPage.Navigation.NavigationStack[_navPage.Navigation.NavigationStack.Count - 1] : null); if (current is HardwareKeyPage hkPage) { hkPage.OnReappearing(); } }
void OnModalPopped(Page modalPage) => ModalPopped?.Invoke(this, new ModalPoppedEventArgs(modalPage));