@@ -5,6 +5,7 @@ import 'package:go_router/go_router.dart';
55import 'package:spotiflac_android/screens/main_shell.dart' ;
66import 'package:spotiflac_android/screens/setup_screen.dart' ;
77import 'package:spotiflac_android/screens/tutorial_screen.dart' ;
8+ import 'package:spotiflac_android/screens/whats_new_screen.dart' ;
89import 'package:spotiflac_android/providers/settings_provider.dart' ;
910import 'package:spotiflac_android/theme/dynamic_color_wrapper.dart' ;
1011import 'package:spotiflac_android/l10n/app_localizations.dart' ;
@@ -16,13 +17,18 @@ final _routerProvider = Provider<GoRouter>((ref) {
1617 final hasCompletedTutorial = ref.watch (
1718 settingsProvider.select ((s) => s.hasCompletedTutorial),
1819 );
20+ final hasSeenWhatsNew = ref.watch (
21+ settingsProvider.select ((s) => s.hasSeenWhatsNew),
22+ );
1923
2024 // Determine initial location based on app state
2125 String initialLocation;
2226 if (isFirstLaunch) {
2327 initialLocation = '/setup' ;
2428 } else if (! hasCompletedTutorial) {
2529 initialLocation = '/tutorial' ;
30+ } else if (! hasSeenWhatsNew) {
31+ initialLocation = '/whats-new' ;
2632 } else {
2733 initialLocation = '/' ;
2834 }
@@ -36,6 +42,10 @@ final _routerProvider = Provider<GoRouter>((ref) {
3642 path: '/tutorial' ,
3743 builder: (context, state) => const TutorialScreen (),
3844 ),
45+ GoRoute (
46+ path: '/whats-new' ,
47+ builder: (context, state) => const WhatsNewScreen (),
48+ ),
3949 ],
4050 // Safety net: if a deep link URL (e.g. Spotify/Deezer) somehow reaches
4151 // GoRouter, redirect to home instead of showing "Page Not Found".
0 commit comments