From fee5c57207f9f1c77039a0111e117698e957f239 Mon Sep 17 00:00:00 2001 From: Felix Kirchner Date: Sun, 23 Nov 2025 12:13:30 +0100 Subject: [PATCH 1/4] Added comments for return value -1 --- lib/presentation/views/main_menu/statistics_view.dart | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/presentation/views/main_menu/statistics_view.dart b/lib/presentation/views/main_menu/statistics_view.dart index 8830118..58dec3a 100644 --- a/lib/presentation/views/main_menu/statistics_view.dart +++ b/lib/presentation/views/main_menu/statistics_view.dart @@ -129,6 +129,7 @@ class _StatisticsViewState extends State { final winner = game.winner; if (winner != null && winner.isNotEmpty) { final index = winCounts.indexWhere((entry) => entry.$1 == winner); + // -1 means winner not found in winCounts if (index != -1) { final current = winCounts[index].$2; winCounts[index] = (winner, current + 1); @@ -141,6 +142,7 @@ class _StatisticsViewState extends State { // Adding all players with zero wins for (var player in players) { final index = winCounts.indexWhere((entry) => entry.$1 == player.id); + // -1 means player not found in winCounts if (index == -1) { winCounts.add((player.id, 0)); } @@ -175,6 +177,7 @@ class _StatisticsViewState extends State { final members = game.group!.members.map((p) => p.id).toList(); for (var playerId in members) { final index = gameCounts.indexWhere((entry) => entry.$1 == playerId); + // -1 means player not found in gameCounts if (index != -1) { final current = gameCounts[index].$2; gameCounts[index] = (playerId, current + 1); @@ -187,6 +190,7 @@ class _StatisticsViewState extends State { final members = game.players!.map((p) => p.id).toList(); for (var playerId in members) { final index = gameCounts.indexWhere((entry) => entry.$1 == playerId); + // -1 means player not found in gameCounts if (index != -1) { final current = gameCounts[index].$2; gameCounts[index] = (playerId, current + 1); @@ -200,6 +204,7 @@ class _StatisticsViewState extends State { // Adding all players with zero games for (var player in players) { final index = gameCounts.indexWhere((entry) => entry.$1 == player.id); + // -1 means player not found in gameCounts if (index == -1) { gameCounts.add((player.id, 0)); } From d411f58134f256bfbb1e6aed73e10a9bc9ae8840 Mon Sep 17 00:00:00 2001 From: Felix Kirchner Date: Sun, 23 Nov 2025 12:18:05 +0100 Subject: [PATCH 2/4] Changed icon for second statistics tile --- lib/presentation/views/main_menu/statistics_view.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/presentation/views/main_menu/statistics_view.dart b/lib/presentation/views/main_menu/statistics_view.dart index 58dec3a..96e2203 100644 --- a/lib/presentation/views/main_menu/statistics_view.dart +++ b/lib/presentation/views/main_menu/statistics_view.dart @@ -89,7 +89,7 @@ class _StatisticsViewState extends State { ), SizedBox(height: constraints.maxHeight * 0.02), StatisticsTile( - icon: Icons.casino, + icon: Icons.percent, title: 'Winrate per Player', width: constraints.maxWidth * 0.95, values: winRates, From e9b041e43ac89fdf775e36704fddeac8700b96c7 Mon Sep 17 00:00:00 2001 From: Felix Kirchner Date: Sun, 23 Nov 2025 12:33:13 +0100 Subject: [PATCH 3/4] Changed double depiction --- lib/presentation/views/main_menu/statistics_view.dart | 3 +-- lib/presentation/widgets/tiles/statistics_tile.dart | 4 +++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/presentation/views/main_menu/statistics_view.dart b/lib/presentation/views/main_menu/statistics_view.dart index 7a6f861..56bdcf5 100644 --- a/lib/presentation/views/main_menu/statistics_view.dart +++ b/lib/presentation/views/main_menu/statistics_view.dart @@ -93,7 +93,7 @@ class _StatisticsViewState extends State { title: 'Winrate per Player', width: constraints.maxWidth * 0.95, values: winRates, - itemCount: 5, + itemCount: 115, barColor: Colors.orange[700]!, ), SizedBox(height: constraints.maxHeight * 0.02), @@ -105,7 +105,6 @@ class _StatisticsViewState extends State { itemCount: 10, barColor: Colors.green, ), - SizedBox(height: MediaQuery.paddingOf(context).bottom), ], ), diff --git a/lib/presentation/widgets/tiles/statistics_tile.dart b/lib/presentation/widgets/tiles/statistics_tile.dart index 279c492..3692167 100644 --- a/lib/presentation/widgets/tiles/statistics_tile.dart +++ b/lib/presentation/widgets/tiles/statistics_tile.dart @@ -80,7 +80,9 @@ class StatisticsTile extends StatelessWidget { const Spacer(), Center( child: Text( - values[index].$2.toString(), + values[index].$2 <= 1 + ? values[index].$2.toStringAsFixed(2) + : values[index].$2.toString(), textAlign: TextAlign.center, style: const TextStyle( fontSize: 16, From 7cda25a380af58b4714bb537ac59d0ec696d11df Mon Sep 17 00:00:00 2001 From: Felix Kirchner Date: Sun, 23 Nov 2025 12:34:42 +0100 Subject: [PATCH 4/4] Changed item count back to normal --- lib/presentation/views/main_menu/statistics_view.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/presentation/views/main_menu/statistics_view.dart b/lib/presentation/views/main_menu/statistics_view.dart index 56bdcf5..02eab46 100644 --- a/lib/presentation/views/main_menu/statistics_view.dart +++ b/lib/presentation/views/main_menu/statistics_view.dart @@ -93,7 +93,7 @@ class _StatisticsViewState extends State { title: 'Winrate per Player', width: constraints.maxWidth * 0.95, values: winRates, - itemCount: 115, + itemCount: 5, barColor: Colors.orange[700]!, ), SizedBox(height: constraints.maxHeight * 0.02),