make practice card text bot style, change opacity of icon buttons based on if they're available / enabled

pull/1384/head
ggurdin 1 year ago
parent 401d8522f8
commit 50af1e5508

@ -4057,5 +4057,6 @@
"suggestToSpace": "Suggest this space", "suggestToSpace": "Suggest this space",
"suggestToSpaceDesc": "Suggested spaces will appear in the chat lists for their parent spaces", "suggestToSpaceDesc": "Suggested spaces will appear in the chat lists for their parent spaces",
"practice": "Practice", "practice": "Practice",
"noLanguagesSet": "No languages set" "noLanguagesSet": "No languages set",
"noActivitiesFound": "No practice activities found for this message"
} }

@ -1,3 +1,4 @@
import 'package:fluffychat/pangea/matrix_event_wrappers/pangea_message_event.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart'; import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:material_symbols_icons/symbols.dart'; import 'package:material_symbols_icons/symbols.dart';
@ -79,4 +80,29 @@ extension MessageModeExtension on MessageMode {
return true; return true;
} }
} }
Color? iconColor(
PangeaMessageEvent event,
MessageMode? currentMode,
BuildContext context,
) {
final bool isPracticeActivity = this == MessageMode.practiceActivity;
final bool practicing = currentMode == MessageMode.practiceActivity;
final bool practiceEnabled = event.hasUncompletedActivity;
// if this is the practice activity icon, and there's no practice activities available,
// and the current mode is not practice, return lower opacity color.
if (isPracticeActivity && !practicing && !practiceEnabled) {
return Theme.of(context).iconTheme.color?.withOpacity(0.5);
}
// if this is not a practice activity icon, and practice activities are available,
// then return lower opacity color if the current mode is practice.
if (!isPracticeActivity && practicing && practiceEnabled) {
return Theme.of(context).iconTheme.color?.withOpacity(0.5);
}
// if this is the current mode, return primary color.
return currentMode == this ? Theme.of(context).colorScheme.primary : null;
}
} }

@ -418,9 +418,11 @@ class MessageToolbarState extends State<MessageToolbar> {
message: mode.tooltip(context), message: mode.tooltip(context),
child: IconButton( child: IconButton(
icon: Icon(mode.icon), icon: Icon(mode.icon),
color: currentMode == mode color: mode.iconColor(
? Theme.of(context).colorScheme.primary widget.pangeaMessageEvent,
: null, currentMode,
context,
),
onPressed: () => updateMode(mode), onPressed: () => updateMode(mode),
), ),
); );

@ -2,6 +2,7 @@ import 'dart:developer';
import 'package:fluffychat/pangea/matrix_event_wrappers/pangea_message_event.dart'; import 'package:fluffychat/pangea/matrix_event_wrappers/pangea_message_event.dart';
import 'package:fluffychat/pangea/matrix_event_wrappers/practice_activity_event.dart'; import 'package:fluffychat/pangea/matrix_event_wrappers/practice_activity_event.dart';
import 'package:fluffychat/pangea/utils/bot_style.dart';
import 'package:fluffychat/pangea/widgets/practice_activity/practice_activity_content.dart'; import 'package:fluffychat/pangea/widgets/practice_activity/practice_activity_content.dart';
import 'package:fluffychat/widgets/matrix.dart'; import 'package:fluffychat/widgets/matrix.dart';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
@ -61,7 +62,10 @@ class MessagePracticeActivityCardState extends State<PracticeActivityCard> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
if (practiceEvent == null) { if (practiceEvent == null) {
return const Text('No practice activities found for this message'); return Text(
L10n.of(context)!.noActivitiesFound,
style: BotStyle.text(context),
);
// return GeneratePracticeActivityButton( // return GeneratePracticeActivityButton(
// pangeaMessageEvent: widget.pangeaMessageEvent, // pangeaMessageEvent: widget.pangeaMessageEvent,
// onActivityGenerated: updatePracticeActivity, // onActivityGenerated: updatePracticeActivity,

@ -862,7 +862,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"be": [ "be": [
@ -2361,7 +2362,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"bn": [ "bn": [
@ -3856,7 +3858,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"bo": [ "bo": [
@ -5355,7 +5358,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"ca": [ "ca": [
@ -6256,7 +6260,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"cs": [ "cs": [
@ -7239,7 +7244,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"de": [ "de": [
@ -8105,7 +8111,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"el": [ "el": [
@ -9555,7 +9562,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"eo": [ "eo": [
@ -10703,7 +10711,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"es": [ "es": [
@ -10717,7 +10726,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"et": [ "et": [
@ -11583,7 +11593,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"eu": [ "eu": [
@ -12451,7 +12462,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"fa": [ "fa": [
@ -13456,7 +13468,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"fi": [ "fi": [
@ -14425,7 +14438,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"fil": [ "fil": [
@ -15750,7 +15764,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"fr": [ "fr": [
@ -16754,7 +16769,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"ga": [ "ga": [
@ -17887,7 +17903,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"gl": [ "gl": [
@ -18753,7 +18770,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"he": [ "he": [
@ -20005,7 +20023,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"hi": [ "hi": [
@ -21497,7 +21516,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"hr": [ "hr": [
@ -22442,7 +22462,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"hu": [ "hu": [
@ -23324,7 +23345,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"ia": [ "ia": [
@ -24809,7 +24831,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"id": [ "id": [
@ -25681,7 +25704,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"ie": [ "ie": [
@ -26937,7 +26961,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"it": [ "it": [
@ -27860,7 +27885,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"ja": [ "ja": [
@ -28894,7 +28920,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"ka": [ "ka": [
@ -30247,7 +30274,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"ko": [ "ko": [
@ -31115,7 +31143,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"lt": [ "lt": [
@ -32149,7 +32178,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"lv": [ "lv": [
@ -33023,7 +33053,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"nb": [ "nb": [
@ -34221,7 +34252,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"nl": [ "nl": [
@ -35183,7 +35215,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"pl": [ "pl": [
@ -36154,7 +36187,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"pt": [ "pt": [
@ -37631,7 +37665,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"pt_BR": [ "pt_BR": [
@ -38503,7 +38538,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"pt_PT": [ "pt_PT": [
@ -39702,7 +39738,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"ro": [ "ro": [
@ -40708,7 +40745,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"ru": [ "ru": [
@ -41580,7 +41618,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"sk": [ "sk": [
@ -42845,7 +42884,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"sl": [ "sl": [
@ -44240,7 +44280,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"sr": [ "sr": [
@ -45409,7 +45450,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"sv": [ "sv": [
@ -46312,7 +46354,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"ta": [ "ta": [
@ -47808,7 +47851,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"th": [ "th": [
@ -49258,7 +49302,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"tr": [ "tr": [
@ -50124,7 +50169,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"uk": [ "uk": [
@ -51027,7 +51073,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"vi": [ "vi": [
@ -52378,7 +52425,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"zh": [ "zh": [
@ -53244,7 +53292,8 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
], ],
"zh_Hant": [ "zh_Hant": [
@ -54391,6 +54440,7 @@
"suggestToSpace", "suggestToSpace",
"suggestToSpaceDesc", "suggestToSpaceDesc",
"practice", "practice",
"noLanguagesSet" "noLanguagesSet",
"noActivitiesFound"
] ]
} }

Loading…
Cancel
Save