Files
Toolkit2/Toolkit.Foundation/NavigateBackHandler.cs
T
TheXamlGuy bc55c4649b tidy
2024-04-26 23:05:36 +01:00

20 lines
642 B
C#

using Microsoft.Extensions.DependencyInjection;
namespace Toolkit.Foundation;
public class NavigateBackHandler(IComponentScopeProvider provider) :
INotificationHandler<NavigateBack>
{
public async Task Handle(NavigateBack args,
CancellationToken cancellationToken)
{
if (provider.Get(args.Scope ?? "Root")
is ComponentScopeDescriptor descriptor)
{
if (descriptor?.Services?.GetService<INavigationScope>() is INavigationScope navigationScope)
{
await navigationScope.NavigateBackAsync(args.Context, cancellationToken);
}
}
}
}