fix: update logic for checking if short lang code TTS is available (#1946)
This commit is contained in:
parent
907ad15f79
commit
2a9f3a6e96
2 changed files with 19 additions and 9 deletions
|
|
@ -130,6 +130,11 @@ class SettingsLearningController extends State<SettingsLearning> {
|
|||
if (mounted) setState(() {});
|
||||
}
|
||||
|
||||
LanguageModel? get _targetLanguage =>
|
||||
_profile.userSettings.targetLanguage != null
|
||||
? PangeaLanguage.byLangCode(_profile.userSettings.targetLanguage!)
|
||||
: null;
|
||||
|
||||
bool getToolSetting(ToolSetting toolSetting) {
|
||||
final toolSettings = _profile.toolSettings;
|
||||
switch (toolSetting) {
|
||||
|
|
@ -145,7 +150,8 @@ class SettingsLearningController extends State<SettingsLearning> {
|
|||
return toolSettings.autoIGC;
|
||||
case ToolSetting.enableTTS:
|
||||
return _profile.userSettings.targetLanguage != null &&
|
||||
tts.isLanguageSupported(_profile.userSettings.targetLanguage!) &&
|
||||
_targetLanguage != null &&
|
||||
tts.isLanguageSupported(_targetLanguage!) &&
|
||||
toolSettings.enableTTS;
|
||||
case ToolSetting.enableAutocorrect:
|
||||
return toolSettings.enableAutocorrect;
|
||||
|
|
@ -154,7 +160,8 @@ class SettingsLearningController extends State<SettingsLearning> {
|
|||
|
||||
bool get isTTSSupported =>
|
||||
_profile.userSettings.targetLanguage != null &&
|
||||
tts.isLanguageSupported(_profile.userSettings.targetLanguage!);
|
||||
_targetLanguage != null &&
|
||||
tts.isLanguageSupported(_targetLanguage!);
|
||||
|
||||
LanguageModel? get selectedSourceLanguage {
|
||||
return userL1 ?? pangeaController.languageController.systemLanguage;
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@ import 'package:text_to_speech/text_to_speech.dart';
|
|||
import 'package:fluffychat/pangea/common/utils/error_handler.dart';
|
||||
import 'package:fluffychat/pangea/instructions/instructions_enum.dart';
|
||||
import 'package:fluffychat/pangea/instructions/instructions_show_popup.dart';
|
||||
import 'package:fluffychat/pangea/learning_settings/models/language_model.dart';
|
||||
import 'package:fluffychat/pangea/toolbar/widgets/missing_voice_button.dart';
|
||||
import 'package:fluffychat/pangea/user/controllers/user_controller.dart';
|
||||
import 'package:fluffychat/utils/platform_infos.dart';
|
||||
|
|
@ -240,12 +241,14 @@ class TtsController {
|
|||
}
|
||||
}
|
||||
|
||||
bool get _isL2FullySupported =>
|
||||
_availableLangCodes.contains(l2LangCode) ||
|
||||
(l2LangCodeShort != null &&
|
||||
_availableLangCodes.any((lang) => lang.startsWith(l2LangCodeShort!)));
|
||||
bool get _isL2FullySupported {
|
||||
return _availableLangCodes.contains(l2LangCode) ||
|
||||
(l2LangCodeShort != null &&
|
||||
_availableLangCodes
|
||||
.any((lang) => lang.startsWith(l2LangCodeShort!)));
|
||||
}
|
||||
|
||||
bool isLanguageSupported(String langCode) =>
|
||||
_availableLangCodes.contains(langCode) ||
|
||||
_availableLangCodes.any((lang) => lang.startsWith(langCode));
|
||||
bool isLanguageSupported(LanguageModel lang) =>
|
||||
_availableLangCodes.contains(lang.langCode) ||
|
||||
_availableLangCodes.any((l) => l.startsWith(lang.langCodeShort));
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue