Skip to content

Commit 839fa12

Browse files
committed
feat: Add AppNavigationObserver.
1 parent 677ee83 commit 839fa12

2 files changed

Lines changed: 27 additions & 0 deletions

File tree

lib/presentation/core/main_app.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import 'package:sentry_flutter/sentry_flutter.dart';
44

55
import '../../data/services/local/storage_service.dart';
66
import '../../data/services/remote/api_service.dart';
7+
import 'navigation_observer.dart';
78
import 'router.dart';
89

910
class Codephile extends StatelessWidget {
@@ -16,6 +17,7 @@ class Codephile extends StatelessWidget {
1617
// home: const SplashScreen(),
1718
navigatorObservers: <NavigatorObserver>[
1819
SentryNavigatorObserver(),
20+
AppNavigationObserver(),
1921
],
2022
onGenerateRoute: AppRouter.generateRoute,
2123
title: 'Codephile',
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import 'dart:developer';
2+
3+
import 'package:flutter/material.dart';
4+
5+
class AppNavigationObserver extends NavigatorObserver {
6+
@override
7+
void didPush(Route route, Route? previousRoute) {
8+
log('[NAV] [PUSH] { from ${previousRoute?.settings.name} to ${route.settings.name} }');
9+
}
10+
11+
@override
12+
void didReplace({Route? newRoute, Route? oldRoute}) {
13+
log('[NAV] [REPLACE] { from ${oldRoute?.settings.name} to ${newRoute?.settings.name} }');
14+
}
15+
16+
@override
17+
void didRemove(Route route, Route? previousRoute) {
18+
log('[NAV] [REMOVE] { from ${route.settings.name} to ${previousRoute?.settings.name} }');
19+
}
20+
21+
@override
22+
void didPop(Route route, Route? previousRoute) {
23+
log('[NAV] [POP] { from ${route.settings.name} to ${previousRoute?.settings.name} }');
24+
}
25+
}

0 commit comments

Comments
 (0)