diff --git a/lib/features/base/widget/drop_down_button_widget.dart b/lib/features/base/widget/drop_down_button_widget.dart index 5b023b0f9..f0efffaad 100644 --- a/lib/features/base/widget/drop_down_button_widget.dart +++ b/lib/features/base/widget/drop_down_button_widget.dart @@ -11,7 +11,6 @@ import 'package:pointer_interceptor/pointer_interceptor.dart'; import 'package:rich_text_composer/rich_text_composer.dart' as rich_text_composer; import 'package:rule_filter/rule_filter/rule_condition.dart' as rule_condition; import 'package:tmail_ui_user/features/composer/presentation/model/font_name_type.dart'; -import 'package:tmail_ui_user/features/manage_account/presentation/language_and_region/extensions/locale_extension.dart'; import 'package:tmail_ui_user/features/rules_filter_creator/presentation/extensions/rule_condition_extensions.dart'; import 'package:tmail_ui_user/features/rules_filter_creator/presentation/model/email_rule_filter_action.dart'; @@ -167,9 +166,6 @@ class DropDownButtonWidget extends StatelessWidget { if (item is Identity) { return item.name ?? ''; } - if (item is Locale) { - return item.getLanguageName(context); - } if (item is FontNameType) { return item.fontFamily; } diff --git a/lib/features/manage_account/presentation/language_and_region/extensions/locale_extension.dart b/lib/features/manage_account/presentation/language_and_region/extensions/locale_extension.dart index 1dc26e654..2f16a9f41 100644 --- a/lib/features/manage_account/presentation/language_and_region/extensions/locale_extension.dart +++ b/lib/features/manage_account/presentation/language_and_region/extensions/locale_extension.dart @@ -4,7 +4,7 @@ import 'package:tmail_ui_user/main/localizations/app_localizations.dart'; extension LocaleExtension on Locale { - String getLanguageName(BuildContext context) { + String getLanguageNameByCurrentLocale(BuildContext context) { switch(languageCode) { case 'fr': return AppLocalizations.of(context).languageFrench; @@ -22,4 +22,23 @@ extension LocaleExtension on Locale { return ''; } } + + String getSourceLanguageName() { + switch(languageCode) { + case 'fr': + return 'Français'; + case 'en': + return 'English'; + case 'vi': + return 'Tiếng Việt'; + case 'ru': + return 'Русский'; + case 'ar': + return 'اَلْعَرَبِيَّةُ'; + case 'it': + return 'Italiano'; + default: + return ''; + } + } } \ No newline at end of file diff --git a/lib/features/manage_account/presentation/language_and_region/widgets/change_language_button_widget.dart b/lib/features/manage_account/presentation/language_and_region/widgets/change_language_button_widget.dart index 4f18cac8b..a27bc7fdd 100644 --- a/lib/features/manage_account/presentation/language_and_region/widgets/change_language_button_widget.dart +++ b/lib/features/manage_account/presentation/language_and_region/widgets/change_language_button_widget.dart @@ -112,7 +112,7 @@ class ChangeLanguageButtonWidget extends StatelessWidget { padding: const EdgeInsets.only(left: 12, right: 10), child: Row(children: [ Expanded(child: Text( - _controller.languageSelected.value.getLanguageName(context), + _controller.languageSelected.value.getLanguageNameByCurrentLocale(context), style: const TextStyle( fontSize: 16, fontWeight: FontWeight.normal, diff --git a/lib/features/manage_account/presentation/language_and_region/widgets/lanuage_item_widget.dart b/lib/features/manage_account/presentation/language_and_region/widgets/lanuage_item_widget.dart index a8ea596fc..50b17dfd8 100644 --- a/lib/features/manage_account/presentation/language_and_region/widgets/lanuage_item_widget.dart +++ b/lib/features/manage_account/presentation/language_and_region/widgets/lanuage_item_widget.dart @@ -33,16 +33,31 @@ class LanguageItemWidget extends StatelessWidget { child: Padding( padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 16), child: Row(children: [ - Expanded(child: Text( - localeCurrent.getLanguageName(context), - style: const TextStyle( - fontSize: 17, - fontWeight: FontWeight.normal, - color: Colors.black - ), - maxLines: 1, - softWrap: CommonTextStyle.defaultSoftWrap, - overflow: CommonTextStyle.defaultTextOverFlow, + Expanded(child: Row( + children: [ + Text( + localeCurrent.getLanguageNameByCurrentLocale(context), + style: const TextStyle( + fontSize: 17, + fontWeight: FontWeight.normal, + color: Colors.black + ), + maxLines: 1, + softWrap: CommonTextStyle.defaultSoftWrap, + overflow: CommonTextStyle.defaultTextOverFlow, + ), + Text( + ' - ${localeCurrent.getSourceLanguageName()}', + style: const TextStyle( + fontSize: 17, + fontWeight: FontWeight.w500, + color: Colors.black + ), + maxLines: 1, + softWrap: CommonTextStyle.defaultSoftWrap, + overflow: CommonTextStyle.defaultTextOverFlow, + ) + ] )), if (localeCurrent == localeSelected) SvgPicture.asset(