From c53b9b2281131d1876f33368d0c4ba48db7befed Mon Sep 17 00:00:00 2001 From: PartyDonut <42371342+PartyDonut@users.noreply.github.com> Date: Sun, 13 Oct 2024 18:40:16 +0200 Subject: [PATCH] [Bugfix] Mobile - Fixed navigating back to splash screen (#11) Fixes a small bug where the user could navigate back to the splashscreen when starting the app. Also fixes switching users and going back from the login screen. Co-authored-by: PartyDonut --- lib/routes/auto_router.dart | 2 +- lib/screens/login/login_screen.dart | 2 +- lib/screens/settings/settings_screen.dart | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/routes/auto_router.dart b/lib/routes/auto_router.dart index ad0dc76..7851ed5 100644 --- a/lib/routes/auto_router.dart +++ b/lib/routes/auto_router.dart @@ -131,7 +131,7 @@ class AuthGuard extends AutoRouteGuard { if (value) { resolver.next(true); } else { - router.navigate(const LoginRoute()); + router.replace(const LoginRoute()); } })); } diff --git a/lib/screens/login/login_screen.dart b/lib/screens/login/login_screen.dart index c54b734..e54e5a0 100644 --- a/lib/screens/login/login_screen.dart +++ b/lib/screens/login/login_screen.dart @@ -211,7 +211,7 @@ class _LoginPageState extends ConsumerState { void loggedInGoToHome() { ref.read(lockScreenActiveProvider.notifier).update((state) => false); if (context.mounted) { - context.router.navigate(const DashboardRoute()); + context.router.replaceAll([const DashboardRoute()]); } } diff --git a/lib/screens/settings/settings_screen.dart b/lib/screens/settings/settings_screen.dart index 2e6ea77..cf36583 100644 --- a/lib/screens/settings/settings_screen.dart +++ b/lib/screens/settings/settings_screen.dart @@ -171,7 +171,7 @@ class _SettingsScreenState extends ConsumerState { tooltip: context.localized.switchUser, onPressed: () async { await ref.read(userProvider.notifier).logoutUser(); - context.router.navigate(const LoginRoute()); + context.router.replaceAll([const LoginRoute()]); }, child: const Icon( IconsaxOutline.arrow_swap_horizontal, @@ -208,7 +208,7 @@ class _SettingsScreenState extends ConsumerState { onPressed: () async { await ref.read(authProvider.notifier).logOutUser(); if (context.mounted) { - context.router.navigate(const LoginRoute()); + context.router.replaceAll([const LoginRoute()]); } }, child: Text(context.localized.logout),