Skip to content

Commit 70a84f6

Browse files
authored
Update MAUI Popup documentation for OnNavigatingFrom extension (#617)
Add documentation for OnNavigatingFrom extension
1 parent 886c0b0 commit 70a84f6

1 file changed

Lines changed: 17 additions & 5 deletions

File tree

docs/maui/views/Popup.md

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -181,13 +181,13 @@ It is important to note that a `Popup` will be displayed inside `ContentPage` wh
181181

182182
| Action | Lifecycle event |
183183
| ------ | --------------- |
184-
| Show popup | Current `Page` will receive `OnDisappearing` and `OnNavigatingFrom` |
184+
| Show popup | Current `Page` will receive `OnNavigatingFrom`, `OnDisappearing` and `OnNavigatedFrom` |
185185
| Close popup | Previous `Page` will receive `OnAppearing` and `OnNavigatedTo` |
186186

187187
To determine if `OnNavigatedTo(NavigatedToEventArgs)` was called by dismissing `Popup`, you can use the `WasPreviousPageAToolkitPopup()` extension method:
188188

189189
```cs
190-
protected override async void OnNavigatedTo(NavigatedToEventArgs args)
190+
protected override void OnNavigatedTo(NavigatedToEventArgs args)
191191
{
192192
base.OnNavigatedTo(args);
193193

@@ -198,10 +198,22 @@ protected override async void OnNavigatedTo(NavigatedToEventArgs args)
198198
}
199199
```
200200

201-
To determine if `OnNavigatedFrom(NavigatedFromEventArgs)` was called by opening a `Popup`, you can use the `IsDestinationPageACommunityToolkitPopupPage()` extension method:
201+
To determine whether `OnNavigatingFrom(NavigatingFromEventArgs)` or `OnNavigatedFrom(NavigatedFromEventArgs)` was called by opening a `Popup`, you can use the `IsDestinationPageACommunityToolkitPopupPage()` extension method:
202202

203-
```cs
204-
protected override async void OnNavigatedFrom(NavigatedFromEventArgs args)
203+
> [!WARNING]
204+
> As per [https://github.com/dotnet/maui/issues/34073](https://github.com/dotnet/maui/issues/34073), OnNavigatingFrom is currently not working properly, but will be fixed in a near future
205+
206+
```csharp
207+
protected override void OnNavigatingFrom(NavigatingFromEventArgs args)
208+
{
209+
base.OnNavigatingFrom(args);
210+
if (args.IsDestinationPageACommunityToolkitPopupPage())
211+
{
212+
// If true, `OnNavigatingFrom` was called by starting a Popup
213+
}
214+
}
215+
216+
protected override void OnNavigatedFrom(NavigatedFromEventArgs args)
205217
{
206218
base.OnNavigatedFrom(args);
207219
if (args.IsDestinationPageACommunityToolkitPopupPage())

0 commit comments

Comments
 (0)