Interface IScreenLifecycleHandler<TRoute, TResult>
- Namespace
- MackySoft.Navigathena
- Assembly
- MackySoft.Navigathena.dll
The single lifecycle entry point for an answering screen. Runtime gates cancellation around callbacks.
public interface IScreenLifecycleHandler<in TRoute, TResult> where TRoute : Route<TResult>
Type Parameters
TRouteTResult
Remarks
Initialization, preparation, stopping, and resource ownership follow the same contract as a screen without a result. Activation receives the typed call endpoint and a valid foreground token after transition effects, ordering, and native input admission finish. Establish operation subscriptions and native focus during activation.
Methods
ActivateAsync(TRoute, ScreenActivityContext<TResult>)
ValueTask ActivateAsync(TRoute route, ScreenActivityContext<TResult> activity)
Parameters
routeTRouteactivityScreenActivityContext<TResult>
Returns
DeactivateAsync()
ValueTask DeactivateAsync()
Returns
InitializeAsync(ScreenInitializationContext, CancellationToken)
Initializes the instance once. The context registers instance-owned resources and reports initialization progress only during this callback.
ValueTask InitializeAsync(ScreenInitializationContext initialization, CancellationToken cancellationToken)
Parameters
initializationScreenInitializationContextcancellationTokenCancellationToken
Returns
PrepareAsync(TRoute, ScreenPreparationContext, CancellationToken)
ValueTask PrepareAsync(TRoute route, ScreenPreparationContext preparation, CancellationToken cancellationToken)
Parameters
routeTRoutepreparationScreenPreparationContextcancellationTokenCancellationToken
Returns
TerminateAsync(NavigationProgressReporter)
Completes final shutdown after activity and owned work stop, while screen resources remain available. This callback is not cancelled.
ValueTask TerminateAsync(NavigationProgressReporter progress)
Parameters
progressNavigationProgressReporter
Returns
Remarks
Finish operations using initialization or preparation resources here. Those resources may be released before the handler's registered disposal. A failed termination retains its dependencies.