From d13b41c45e1c9d312d40d44e0c3377a3d2acac35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Harrault?= <benoit@harrault.fr> Date: Sat, 2 Mar 2024 22:42:11 +0100 Subject: [PATCH] Remove code deprecations --- android/gradle.properties | 4 ++-- lib/screens/home.dart | 10 +++++++--- lib/widgets/dialog_fetch_error.dart | 4 ++-- lib/widgets/dialog_gameover.dart | 5 +++-- lib/widgets/letters.dart | 1 + pubspec.yaml | 2 +- 6 files changed, 16 insertions(+), 10 deletions(-) diff --git a/android/gradle.properties b/android/gradle.properties index 46392af..f522c40 100644 --- a/android/gradle.properties +++ b/android/gradle.properties @@ -1,5 +1,5 @@ org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true -app.versionName=1.2.15 -app.versionCode=26 +app.versionName=1.2.16 +app.versionCode=27 diff --git a/lib/screens/home.dart b/lib/screens/home.dart index 4a797a7..cde5145 100644 --- a/lib/screens/home.dart +++ b/lib/screens/home.dart @@ -38,8 +38,8 @@ class Home extends StatelessWidget { body: Builder( builder: (context) => Center( child: myProvider.searching == true - ? WillPopScope( - onWillPop: () async => false, + ? PopScope( + onPopInvoked: (didPop) {}, child: const Center( child: CircularProgressIndicator(), ), @@ -106,7 +106,7 @@ class Home extends StatelessWidget { style: TextButton.styleFrom( foregroundColor: Colors.white, backgroundColor: const Color(board), - padding: const EdgeInsets.all(10.0), + padding: const EdgeInsets.all(20.0), ), onPressed: () async { myProvider.resetGame(); @@ -115,6 +115,7 @@ class Home extends StatelessWidget { await const Game().pickWord(context, myProvider); if (myProvider.secretWord == '' || myProvider.hiddenWord == '') { control = false; + if (!context.mounted) return; var response = await Navigator.push( context, MaterialPageRoute( @@ -127,6 +128,7 @@ class Home extends StatelessWidget { } else { myProvider.setPrefGameMode = false; myProvider.setPrefLevel = defaultLevel; + if (!context.mounted) return; await const Game().pickWord(context, myProvider); control = true; } @@ -135,10 +137,12 @@ class Home extends StatelessWidget { if (myProvider.secretWord == 'UNEXPECTED ERROR') { control = false; myProvider.resetGame(); + if (!context.mounted) return; errorWord(context); } if (control) { + if (!context.mounted) return; Navigator.pushNamed(context, Game.id) .then((value) => myProvider.searching = false); } diff --git a/lib/widgets/dialog_fetch_error.dart b/lib/widgets/dialog_fetch_error.dart index f491545..45f235d 100644 --- a/lib/widgets/dialog_fetch_error.dart +++ b/lib/widgets/dialog_fetch_error.dart @@ -8,8 +8,8 @@ class DialogFetchError extends StatelessWidget { Widget build(BuildContext context) { return Scaffold( backgroundColor: const Color(board), - body: WillPopScope( - onWillPop: () async => false, + body: PopScope( + onPopInvoked: (didPop) {}, child: AlertDialog( title: const Text('Connexion impossible'), content: const Text('Impossible de récupérer un mot aléatoire. ' diff --git a/lib/widgets/dialog_gameover.dart b/lib/widgets/dialog_gameover.dart index 512c094..96f336f 100644 --- a/lib/widgets/dialog_gameover.dart +++ b/lib/widgets/dialog_gameover.dart @@ -18,8 +18,8 @@ class DialogGameOver extends StatelessWidget { backgroundColor: Colors.transparent, body: myProvider.searching == true ? const Center(child: CircularProgressIndicator()) - : WillPopScope( - onWillPop: () async => false, + : PopScope( + onPopInvoked: (didPop) {}, child: AlertDialog( title: Row( children: [ @@ -51,6 +51,7 @@ class DialogGameOver extends StatelessWidget { onPressed: () async { myProvider.resetSuccessAndErrors(); await const Game().pickWord(context, myProvider); + if (!context.mounted) return; Navigator.of(context).pop(); }, ), diff --git a/lib/widgets/letters.dart b/lib/widgets/letters.dart index 2c13855..eb567e5 100644 --- a/lib/widgets/letters.dart +++ b/lib/widgets/letters.dart @@ -54,6 +54,7 @@ class LetterButtons extends StatelessWidget { if (myProvider.errors == 8) { await Future.delayed(const Duration(milliseconds: 900)); //???? myProvider.addDefeat(); + if (!context.mounted) return; showDialog( context: context, builder: (context) => const DialogGameOver(defeat), diff --git a/pubspec.yaml b/pubspec.yaml index 80f0f7f..30bab32 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,7 +1,7 @@ name: hangman description: Hangman game, have fun with words and letters! publish_to: 'none' -version: 1.2.15+26 +version: 1.2.16+27 environment: sdk: '^3.0.0' -- GitLab