didPush method

  1. @override
void didPush(
  1. Route route,
  2. Route? previousRoute
)
override

Called when a route has been pushed.

This method logs the navigation event and triggers _trackScreenView.

Implementation

@override
void didPush(Route<dynamic> route, Route<dynamic>? previousRoute) {
  super.didPush(route, previousRoute);
  final name = route.settings.name;
  final ctx = navigator?.context;
  debugPrint('UmamiNavigationObserver: didPush: $name');
  debugPrint(
      'UmamiNavigationObserver: previousRoute: ${previousRoute?.settings.name}');
  if (name is String && ctx != null) {
    // ignore: use_build_context_synchronously
    Future.microtask(() async => _trackScreenView(ctx, name, previousRoute));
  }
}