From c2466f7aec7a03b9312f7215fd906f6a4c760a05 Mon Sep 17 00:00:00 2001 From: ggurdin Date: Wed, 11 Sep 2024 09:20:12 -0400 Subject: [PATCH] added 'no data' warning to analytics popup if there's no data --- .../analytics_summary/analytics_popup.dart | 53 +++++++++++-------- 1 file changed, 30 insertions(+), 23 deletions(-) diff --git a/lib/pangea/widgets/chat_list/analytics_summary/analytics_popup.dart b/lib/pangea/widgets/chat_list/analytics_summary/analytics_popup.dart index 59859bb7b..5378796af 100644 --- a/lib/pangea/widgets/chat_list/analytics_summary/analytics_popup.dart +++ b/lib/pangea/widgets/chat_list/analytics_summary/analytics_popup.dart @@ -3,6 +3,7 @@ import 'package:fluffychat/pangea/enum/construct_type_enum.dart'; import 'package:fluffychat/pangea/enum/progress_indicators_enum.dart'; import 'package:fluffychat/pangea/models/analytics/construct_list_model.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_gen/gen_l10n/l10n.dart'; class AnalyticsPopup extends StatelessWidget { final ProgressIndicatorEnum indicator; @@ -34,30 +35,36 @@ class AnalyticsPopup extends StatelessWidget { ), body: Padding( padding: const EdgeInsets.symmetric(vertical: 20), - child: ListView.builder( - itemCount: constructsModel.constructs.length, - itemBuilder: (context, index) { - return Tooltip( - message: - "${constructsModel.constructs[index].points} / ${constructsModel.type.maxXPPerLemma}", - child: ListTile( - onTap: () {}, - title: Text(constructsModel.constructs[index].lemma), - subtitle: LinearProgressIndicator( - value: constructsModel.constructs[index].points / - constructsModel.type.maxXPPerLemma, - minHeight: 20, - borderRadius: const BorderRadius.all( - Radius.circular(AppConfig.borderRadius), - ), - color: indicator.color(context), - ), - contentPadding: - const EdgeInsets.symmetric(horizontal: 20), + child: constructsModel.constructs.isEmpty + ? Center( + child: Text(L10n.of(context)!.noDataFound), + ) + : ListView.builder( + itemCount: constructsModel.constructs.length, + itemBuilder: (context, index) { + return Tooltip( + message: + "${constructsModel.constructs[index].points} / ${constructsModel.type.maxXPPerLemma}", + child: ListTile( + onTap: () {}, + title: Text( + constructsModel.constructs[index].lemma, + ), + subtitle: LinearProgressIndicator( + value: constructsModel.constructs[index].points / + constructsModel.type.maxXPPerLemma, + minHeight: 20, + borderRadius: const BorderRadius.all( + Radius.circular(AppConfig.borderRadius), + ), + color: indicator.color(context), + ), + contentPadding: + const EdgeInsets.symmetric(horizontal: 20), + ), + ); + }, ), - ); - }, - ), ), ), ),