diff --git a/lib/main.dart b/lib/main.dart index d33e62b41..601e5a77d 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,13 +1,4 @@ -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; - import 'package:collection/collection.dart'; -import 'package:flutter_dotenv/flutter_dotenv.dart'; -import 'package:flutter_secure_storage/flutter_secure_storage.dart'; -import 'package:get_storage/get_storage.dart'; -import 'package:matrix/matrix.dart'; -import 'package:shared_preferences/shared_preferences.dart'; - import 'package:fluffychat/config/app_config.dart'; import 'package:fluffychat/pangea/common/config/environment.dart'; import 'package:fluffychat/pangea/common/utils/error_handler.dart'; @@ -15,6 +6,14 @@ import 'package:fluffychat/pangea/common/utils/firebase_analytics.dart'; import 'package:fluffychat/pangea/learning_settings/utils/p_language_store.dart'; import 'package:fluffychat/utils/client_manager.dart'; import 'package:fluffychat/utils/platform_infos.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:flutter_dotenv/flutter_dotenv.dart'; +import 'package:flutter_secure_storage/flutter_secure_storage.dart'; +import 'package:get_storage/get_storage.dart'; +import 'package:matrix/matrix.dart'; +import 'package:shared_preferences/shared_preferences.dart'; + import 'config/setting_keys.dart'; import 'utils/background_push.dart'; import 'widgets/fluffy_chat_app.dart'; @@ -24,7 +23,7 @@ void main() async { // #Pangea try { - await dotenv.load(fileName: ".env"); + await dotenv.load(fileName: ".env.local_choreo"); } catch (e) { Logs().e('Failed to load .env file', e); } diff --git a/lib/pangea/analytics_details_popup/vocab_analytics_details_view.dart b/lib/pangea/analytics_details_popup/vocab_analytics_details_view.dart index d472a64b1..8e6dba805 100644 --- a/lib/pangea/analytics_details_popup/vocab_analytics_details_view.dart +++ b/lib/pangea/analytics_details_popup/vocab_analytics_details_view.dart @@ -1,7 +1,4 @@ -import 'package:flutter/material.dart'; - import 'package:collection/collection.dart'; - import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pangea/analytics_details_popup/analytics_details_popup_content.dart'; import 'package:fluffychat/pangea/analytics_misc/construct_use_model.dart'; @@ -16,6 +13,7 @@ import 'package:fluffychat/pangea/toolbar/utils/shrinkable_text.dart'; import 'package:fluffychat/pangea/toolbar/widgets/practice_activity/word_text_with_audio_button.dart'; import 'package:fluffychat/pangea/toolbar/widgets/word_zoom/lemma_meaning_widget.dart'; import 'package:fluffychat/widgets/matrix.dart'; +import 'package:flutter/material.dart'; /// Displays information about selected lemma, and its usage class VocabDetailsView extends StatelessWidget { @@ -67,7 +65,7 @@ class VocabDetailsView extends StatelessWidget { ); }, ), - if (MatrixState.pangeaController.languageController.userL2 != null) + if (MatrixState.pangeaController.languageController.showTrancription) Padding( padding: const EdgeInsets.only(top: 4.0), child: PhoneticTranscriptionWidget( diff --git a/lib/pangea/learning_settings/controllers/language_controller.dart b/lib/pangea/learning_settings/controllers/language_controller.dart index b5cc511c2..90837e6ff 100644 --- a/lib/pangea/learning_settings/controllers/language_controller.dart +++ b/lib/pangea/learning_settings/controllers/language_controller.dart @@ -1,13 +1,12 @@ // ignore_for_file: depend_on_referenced_packages -import 'package:flutter/material.dart'; - -import 'package:universal_io/io.dart'; - import 'package:fluffychat/pangea/common/controllers/pangea_controller.dart'; import 'package:fluffychat/pangea/learning_settings/constants/language_constants.dart'; import 'package:fluffychat/pangea/learning_settings/models/language_model.dart'; import 'package:fluffychat/pangea/learning_settings/utils/p_language_store.dart'; +import 'package:flutter/material.dart'; +import 'package:universal_io/io.dart'; + import '../widgets/p_language_dialog.dart'; class LanguageController { @@ -112,4 +111,10 @@ class LanguageController { // final model = activeL2 != null ? PangeaLanguage.byLangCode(activeL2) : null; // return model; } + + bool get showTrancription => + _pangeaController.languageController.userL1 != null && + _pangeaController.languageController.userL2 != null && + _pangeaController.languageController.userL1?.script != + _pangeaController.languageController.userL2?.script; } diff --git a/lib/pangea/learning_settings/models/language_model.dart b/lib/pangea/learning_settings/models/language_model.dart index 1e1ef69b9..ae8ab78b0 100644 --- a/lib/pangea/learning_settings/models/language_model.dart +++ b/lib/pangea/learning_settings/models/language_model.dart @@ -1,17 +1,18 @@ -import 'package:flutter/material.dart'; - import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pangea/learning_settings/constants/language_constants.dart'; import 'package:fluffychat/pangea/learning_settings/enums/l2_support_enum.dart'; +import 'package:flutter/material.dart'; class LanguageModel { final String langCode; final String displayName; + final String script; final L2SupportEnum l2Support; LanguageModel({ required this.langCode, required this.displayName, + this.script = LanguageKeys.unknownLanguage, this.l2Support = L2SupportEnum.na, }); @@ -28,12 +29,14 @@ class LanguageModel { l2Support: json['l2_support'] != null ? L2SupportEnum.na.fromStorageString(json['l2_support']) : L2SupportEnum.na, + script: json['script'] ?? LanguageKeys.unknownLanguage, ); } toJson() => { 'language_code': langCode, 'language_name': displayName, + 'script': script, 'l2_support': l2Support.storageString, }; diff --git a/lib/pangea/toolbar/widgets/overlay_message.dart b/lib/pangea/toolbar/widgets/overlay_message.dart index 71a7c573d..6f8ff388f 100644 --- a/lib/pangea/toolbar/widgets/overlay_message.dart +++ b/lib/pangea/toolbar/widgets/overlay_message.dart @@ -1,8 +1,3 @@ -import 'package:flutter/gestures.dart'; -import 'package:flutter/material.dart'; - -import 'package:matrix/matrix.dart'; - import 'package:fluffychat/config/app_config.dart'; import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pages/chat/chat.dart'; @@ -18,6 +13,9 @@ import 'package:fluffychat/pangea/toolbar/widgets/message_selection_overlay.dart import 'package:fluffychat/utils/date_time_extension.dart'; import 'package:fluffychat/utils/file_description.dart'; import 'package:fluffychat/widgets/matrix.dart'; +import 'package:flutter/gestures.dart'; +import 'package:flutter/material.dart'; +import 'package:matrix/matrix.dart'; // @ggurdin be great to explain the need/function of a widget like this class OverlayMessage extends StatelessWidget { @@ -187,20 +185,22 @@ class OverlayMessage extends StatelessWidget { fontStyle: FontStyle.italic, ), ), - PhoneticTranscriptionWidget( - text: overlayController - .transcription!.transcript.text, - textLanguage: PLanguageStore.byLangCode( - pangeaMessageEvent! - .messageDisplayLangCode, - ) ?? - LanguageModel.unknown, - style: AppConfig.messageTextStyle( - event, - textColor, + if (MatrixState.pangeaController + .languageController.showTrancription) + PhoneticTranscriptionWidget( + text: overlayController + .transcription!.transcript.text, + textLanguage: PLanguageStore.byLangCode( + pangeaMessageEvent! + .messageDisplayLangCode, + ) ?? + LanguageModel.unknown, + style: AppConfig.messageTextStyle( + event, + textColor, + ), + iconColor: textColor, ), - iconColor: textColor, - ), ], ), )