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) {
Logger.d("didPush in smartechPX");
super.didPush(route, previousRoute);
try {
BuildContext? context;
if (route.navigator != null) {
context = route.navigator?.context;
if (context != null && context is Element) {
PxContextAware.instance.currentElement = context;
}
}
PxAnchorWidgetTracker.instance.onScreenChange();
// update context after the frame callback if the context is empty on didPush call
WidgetsBinding.instance.addPostFrameCallback((_) {
if (route.navigator != null) {
try {
context = route.navigator?.context;
if (context != null && context is Element) {
PxContextAware.instance.currentElement = context as Element?;
}
} catch (e) {
Logger.d('Error in didPush $e');
}
}
});
} catch (e) {
Logger.d('Error in didPush $e');
}
}