From d2d887e3ee8b9ba4c25c9e7db0587177024ab009 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maty=C3=A1=C5=A1=20Caras?= Date: Mon, 26 Sep 2022 17:02:45 +0200 Subject: [PATCH] =?UTF-8?q?fix(login):=20opravit=20vracen=C3=AD=20na=20p?= =?UTF-8?q?=C5=99ihla=C5=A1ovac=C3=AD=20str=C3=A1nku=20p=C5=99i=20vracen?= =?UTF-8?q?=C3=AD=20zp=C4=9Bt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/main.dart | 43 ++++++++++++++++++++++------------------ lib/okna/jidelnicek.dart | 6 ++++-- lib/okna/welcome.dart | 8 +++++--- 3 files changed, 33 insertions(+), 24 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index 0cd28cb..16433b5 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -231,18 +231,21 @@ class _LoginPageState extends State { var odsouhlasil = await storage.read(key: "oc_souhlas"); if (!mounted) return; if (odsouhlasil == null || odsouhlasil != "ano") { - Navigator.pushReplacement( + Navigator.pushAndRemoveUntil( context, MaterialPageRoute( - builder: (c) => WelcomeScreen( - canteen: canteen, n: flutterLocalNotificationsPlugin))); + builder: (c) => WelcomeScreen( + canteen: canteen, n: flutterLocalNotificationsPlugin), + ), + (route) => false); } else { - Navigator.pushReplacement( - context, - MaterialPageRoute( + Navigator.pushAndRemoveUntil( + context, + MaterialPageRoute( builder: (context) => JidelnicekPage( - canteen: canteen, n: flutterLocalNotificationsPlugin)), - ); + canteen: canteen, n: flutterLocalNotificationsPlugin), + ), + (route) => false); } } on PlatformException { if (!mounted) return; @@ -381,20 +384,21 @@ class _LoginPageState extends State { await storage.read(key: "oc_souhlas"); if (!mounted) return; if (odsouhlasil == null || odsouhlasil != "ano") { - Navigator.pushReplacement( + Navigator.pushAndRemoveUntil( context, MaterialPageRoute( builder: (c) => WelcomeScreen( canteen: canteen, - n: flutterLocalNotificationsPlugin))); + n: flutterLocalNotificationsPlugin)), + (route) => false); } else { - Navigator.pushReplacement( - context, - MaterialPageRoute( - builder: (context) => JidelnicekPage( - canteen: canteen, - n: flutterLocalNotificationsPlugin)), - ); + Navigator.pushAndRemoveUntil( + context, + MaterialPageRoute( + builder: (context) => JidelnicekPage( + canteen: canteen, + n: flutterLocalNotificationsPlugin)), + (route) => false); } } on PlatformException { if (!mounted) return; @@ -445,10 +449,11 @@ class _LoginPageState extends State { den: DateTime.parse(j["den"]))); } if (!mounted) return; - Navigator.pushReplacement( + Navigator.pushAndRemoveUntil( context, MaterialPageRoute( - builder: ((context) => OfflineJidelnicek(jidla: jidla)))); + builder: ((context) => OfflineJidelnicek(jidla: jidla))), + (route) => false); } } } diff --git a/lib/okna/jidelnicek.dart b/lib/okna/jidelnicek.dart index f79880b..b7ec276 100644 --- a/lib/okna/jidelnicek.dart +++ b/lib/okna/jidelnicek.dart @@ -330,8 +330,10 @@ class _JidelnicekPageState extends State { onPressed: () { const storage = FlutterSecureStorage(); storage.deleteAll(); - Navigator.pushReplacement(context, - MaterialPageRoute(builder: (c) => const LoginPage())); + Navigator.pushAndRemoveUntil( + context, + MaterialPageRoute(builder: (c) => const LoginPage()), + (route) => false); }, child: Text(Languages.of(context)!.yes)), TextButton( diff --git a/lib/okna/welcome.dart b/lib/okna/welcome.dart index bae4aaa..676e023 100644 --- a/lib/okna/welcome.dart +++ b/lib/okna/welcome.dart @@ -70,9 +70,11 @@ class _WelcomeScreenState extends State { const storage = FlutterSecureStorage(); await storage.write(key: "oc_souhlas", value: "ano"); if (!mounted) return; - Navigator.of(context).pushReplacement(MaterialPageRoute( - builder: (c) => - JidelnicekPage(canteen: widget.canteen, n: widget.n))); + Navigator.of(context).pushAndRemoveUntil( + MaterialPageRoute( + builder: (c) => + JidelnicekPage(canteen: widget.canteen, n: widget.n)), + (route) => false); }, ), );