From afe395071b2df2cdb79da51dec4271dcd780ebe5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Harrault?= <benoit@harrault.fr> Date: Tue, 27 Sep 2022 23:34:17 +0200 Subject: [PATCH] Display current typing cell --- android/gradle.properties | 4 +-- .../metadata/android/en-US/changelogs/19.txt | 1 + .../metadata/android/fr-FR/changelogs/19.txt | 1 + lib/layout/board.dart | 26 +++++++++++++++---- 4 files changed, 25 insertions(+), 7 deletions(-) create mode 100644 fastlane/metadata/android/en-US/changelogs/19.txt create mode 100644 fastlane/metadata/android/fr-FR/changelogs/19.txt diff --git a/android/gradle.properties b/android/gradle.properties index 30298b3..6c1d873 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=0.0.18 -app.versionCode=18 +app.versionName=0.0.19 +app.versionCode=19 diff --git a/fastlane/metadata/android/en-US/changelogs/19.txt b/fastlane/metadata/android/en-US/changelogs/19.txt new file mode 100644 index 0000000..5515a53 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/19.txt @@ -0,0 +1 @@ +Display current typing cell diff --git a/fastlane/metadata/android/fr-FR/changelogs/19.txt b/fastlane/metadata/android/fr-FR/changelogs/19.txt new file mode 100644 index 0000000..0aff822 --- /dev/null +++ b/fastlane/metadata/android/fr-FR/changelogs/19.txt @@ -0,0 +1 @@ +Mise en évidence de la case en cours de saisie diff --git a/lib/layout/board.dart b/lib/layout/board.dart index dd71a8b..82313c5 100644 --- a/lib/layout/board.dart +++ b/lib/layout/board.dart @@ -10,8 +10,10 @@ class Board { int maxGuessesCount = myProvider.maxGuessesCount; int wordLength = int.parse(myProvider.length); - Widget buildCellWidget(String cellValue, String cellTip) { + Widget buildCellWidget(String cellValue, String cellTip, bool hasFocus) { Color textColor = Colors.white; + Color focusBorderColor = Colors.yellow.shade700; + Color defaultBorderColor = Colors.white; String cellImage = 'empty'; if (cellTip != '') { @@ -23,6 +25,17 @@ class Board { fit: BoxFit.fill, ); + Widget cellBackground = Container( + decoration: BoxDecoration( + border: Border.all( + width: 4.0, + color: hasFocus ? focusBorderColor : defaultBorderColor, + style: BorderStyle.solid, + ), + ), + child: imageWidget, + ); + Text textWidget = Text( cellValue, style: TextStyle( @@ -36,7 +49,7 @@ class Board { return Stack( alignment: Alignment.center, children: <Widget>[ - imageWidget, + cellBackground, Center(child: textWidget), ], ); @@ -67,7 +80,11 @@ class Board { cellTip = tips[colIndex]; } - tableCells.add(TableCell(child: buildCellWidget(cellValue, cellTip))); + bool hasFocus = (!myProvider.gameWon) && + (lineIndex == guesses.length) && + (colIndex == word.length); + + tableCells.add(TableCell(child: buildCellWidget(cellValue, cellTip, hasFocus))); } tableRows.add(TableRow(children: tableCells)); @@ -87,9 +104,8 @@ class Board { child: Table( defaultVerticalAlignment: TableCellVerticalAlignment.middle, border: TableBorder.all( - width: 2.0, color: Colors.white, - style: BorderStyle.solid, + style: BorderStyle.none, ), children: tableRows, ), -- GitLab