Files
Toolkit2/Toolkit.Foundation/NavigateBackHandler.cs
T
2024-05-14 19:24:07 +01:00

21 lines
607 B
C#

using Microsoft.Extensions.DependencyInjection;
namespace Toolkit.Foundation;
public class NavigateBackHandler(IComponentScopeProvider provider) :
INotificationHandler<NavigateBackEventArgs>
{
public Task Handle(NavigateBackEventArgs args)
{
if (provider.Get(args.Scope ?? "Root")
is ComponentScopeDescriptor descriptor)
{
if (descriptor?.Services?.GetService<INavigationScope>() is INavigationScope navigationScope)
{
navigationScope.Back(args.Context);
}
}
return Task.CompletedTask;
}
}