didPush method
The Navigator pushed route
.
The route immediately below that one, and thus the previously active
route, is previousRoute
.
Implementation
@override
void didPush(Route<dynamic> route, Route<dynamic>? previousRoute) {
RouteInfo? routeName = _findRouteByName(routeName: route.settings.name ?? '');
RouteInfo? previousRouteInfo = _findRouteByName(routeName: previousRoute?.settings.name ?? '');
NavigationInterface navigation = GetIt.instance<NavigationInterface>();
if (routeName != null) {
navigation.previousRoute = previousRouteInfo;
WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
navigation.initializeRoute(
routeName,
addToStack: !routeName.isShellRoute,
);
});
log('Pushing to ${routeName.name} from ${previousRoute?.settings.name}');
}
}