mirror of
https://gitlab.com/nkming2/nc-photos.git
synced 2025-02-02 06:46:22 +01:00
Fix string not translatable
This commit is contained in:
parent
7e523ed30c
commit
872196f9e7
4 changed files with 41 additions and 14 deletions
|
@ -301,6 +301,10 @@
|
||||||
"@settingsLanguageTitle": {
|
"@settingsLanguageTitle": {
|
||||||
"description": "Set display language"
|
"description": "Set display language"
|
||||||
},
|
},
|
||||||
|
"settingsLanguageOptionSystemDefaultLabel": "System default",
|
||||||
|
"@settingsLanguageOptionSystemDefaultLabel": {
|
||||||
|
"description": "Follow the Android system language"
|
||||||
|
},
|
||||||
"settingsExifSupportTitle": "EXIF support",
|
"settingsExifSupportTitle": "EXIF support",
|
||||||
"@settingsExifSupportTitle": {
|
"@settingsExifSupportTitle": {
|
||||||
"description": "Title of the EXIF support setting"
|
"description": "Title of the EXIF support setting"
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
"cs": [
|
"cs": [
|
||||||
|
"settingsLanguageOptionSystemDefaultLabel",
|
||||||
"settingsExifWifiOnlyTitle",
|
"settingsExifWifiOnlyTitle",
|
||||||
"settingsExifWifiOnlyFalseSubtitle",
|
"settingsExifWifiOnlyFalseSubtitle",
|
||||||
"settingsMemoriesTitle",
|
"settingsMemoriesTitle",
|
||||||
|
@ -145,6 +146,7 @@
|
||||||
],
|
],
|
||||||
|
|
||||||
"de": [
|
"de": [
|
||||||
|
"settingsLanguageOptionSystemDefaultLabel",
|
||||||
"settingsExifWifiOnlyTitle",
|
"settingsExifWifiOnlyTitle",
|
||||||
"settingsExifWifiOnlyFalseSubtitle",
|
"settingsExifWifiOnlyFalseSubtitle",
|
||||||
"settingsMemoriesTitle",
|
"settingsMemoriesTitle",
|
||||||
|
@ -304,6 +306,7 @@
|
||||||
],
|
],
|
||||||
|
|
||||||
"el": [
|
"el": [
|
||||||
|
"settingsLanguageOptionSystemDefaultLabel",
|
||||||
"settingsExifWifiOnlyTitle",
|
"settingsExifWifiOnlyTitle",
|
||||||
"settingsExifWifiOnlyFalseSubtitle",
|
"settingsExifWifiOnlyFalseSubtitle",
|
||||||
"settingsAccountLabelTitle",
|
"settingsAccountLabelTitle",
|
||||||
|
@ -343,6 +346,7 @@
|
||||||
],
|
],
|
||||||
|
|
||||||
"es": [
|
"es": [
|
||||||
|
"settingsLanguageOptionSystemDefaultLabel",
|
||||||
"rootPickerSkipConfirmationDialogContent2",
|
"rootPickerSkipConfirmationDialogContent2",
|
||||||
"categoriesLabel",
|
"categoriesLabel",
|
||||||
"searchLandingPeopleListEmptyText",
|
"searchLandingPeopleListEmptyText",
|
||||||
|
@ -364,6 +368,7 @@
|
||||||
],
|
],
|
||||||
|
|
||||||
"fi": [
|
"fi": [
|
||||||
|
"settingsLanguageOptionSystemDefaultLabel",
|
||||||
"categoriesLabel",
|
"categoriesLabel",
|
||||||
"searchLandingPeopleListEmptyText",
|
"searchLandingPeopleListEmptyText",
|
||||||
"searchLandingCategoryVideosLabel",
|
"searchLandingCategoryVideosLabel",
|
||||||
|
@ -385,6 +390,7 @@
|
||||||
|
|
||||||
"fr": [
|
"fr": [
|
||||||
"collectionsTooltip",
|
"collectionsTooltip",
|
||||||
|
"settingsLanguageOptionSystemDefaultLabel",
|
||||||
"settingsExifWifiOnlyTitle",
|
"settingsExifWifiOnlyTitle",
|
||||||
"settingsExifWifiOnlyFalseSubtitle",
|
"settingsExifWifiOnlyFalseSubtitle",
|
||||||
"settingsAccountLabelTitle",
|
"settingsAccountLabelTitle",
|
||||||
|
@ -448,6 +454,7 @@
|
||||||
],
|
],
|
||||||
|
|
||||||
"pl": [
|
"pl": [
|
||||||
|
"settingsLanguageOptionSystemDefaultLabel",
|
||||||
"settingsExifWifiOnlyTitle",
|
"settingsExifWifiOnlyTitle",
|
||||||
"settingsExifWifiOnlyFalseSubtitle",
|
"settingsExifWifiOnlyFalseSubtitle",
|
||||||
"settingsAccountLabelTitle",
|
"settingsAccountLabelTitle",
|
||||||
|
@ -529,6 +536,7 @@
|
||||||
],
|
],
|
||||||
|
|
||||||
"pt": [
|
"pt": [
|
||||||
|
"settingsLanguageOptionSystemDefaultLabel",
|
||||||
"settingsExifWifiOnlyTitle",
|
"settingsExifWifiOnlyTitle",
|
||||||
"settingsExifWifiOnlyFalseSubtitle",
|
"settingsExifWifiOnlyFalseSubtitle",
|
||||||
"settingsAccountLabelTitle",
|
"settingsAccountLabelTitle",
|
||||||
|
@ -589,6 +597,7 @@
|
||||||
],
|
],
|
||||||
|
|
||||||
"ru": [
|
"ru": [
|
||||||
|
"settingsLanguageOptionSystemDefaultLabel",
|
||||||
"settingsExifWifiOnlyTitle",
|
"settingsExifWifiOnlyTitle",
|
||||||
"settingsExifWifiOnlyFalseSubtitle",
|
"settingsExifWifiOnlyFalseSubtitle",
|
||||||
"settingsAccountLabelTitle",
|
"settingsAccountLabelTitle",
|
||||||
|
@ -649,6 +658,7 @@
|
||||||
],
|
],
|
||||||
|
|
||||||
"zh": [
|
"zh": [
|
||||||
|
"settingsLanguageOptionSystemDefaultLabel",
|
||||||
"settingsExifWifiOnlyTitle",
|
"settingsExifWifiOnlyTitle",
|
||||||
"settingsExifWifiOnlyFalseSubtitle",
|
"settingsExifWifiOnlyFalseSubtitle",
|
||||||
"settingsAccountLabelTitle",
|
"settingsAccountLabelTitle",
|
||||||
|
@ -709,6 +719,7 @@
|
||||||
],
|
],
|
||||||
|
|
||||||
"zh_Hant": [
|
"zh_Hant": [
|
||||||
|
"settingsLanguageOptionSystemDefaultLabel",
|
||||||
"settingsExifWifiOnlyTitle",
|
"settingsExifWifiOnlyTitle",
|
||||||
"settingsExifWifiOnlyFalseSubtitle",
|
"settingsExifWifiOnlyFalseSubtitle",
|
||||||
"settingsAccountLabelTitle",
|
"settingsAccountLabelTitle",
|
||||||
|
|
|
@ -1,17 +1,38 @@
|
||||||
import 'package:flutter/widgets.dart';
|
import 'package:flutter/widgets.dart';
|
||||||
|
import 'package:nc_photos/app_localizations.dart';
|
||||||
import 'package:nc_photos/pref.dart';
|
import 'package:nc_photos/pref.dart';
|
||||||
|
|
||||||
class AppLanguage {
|
class AppLanguage {
|
||||||
const AppLanguage(this.langId, this.nativeName, this.isoName, this.locale);
|
const AppLanguage(this.langId, this._nativeName, this.isoName, this.locale);
|
||||||
|
|
||||||
|
String get nativeName {
|
||||||
|
if (langId == _AppLanguageEnum.systemDefault.index) {
|
||||||
|
try {
|
||||||
|
return L10n.global().settingsLanguageOptionSystemDefaultLabel;
|
||||||
|
} catch (_) {
|
||||||
|
return _nativeName;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return _nativeName;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
final int langId;
|
final int langId;
|
||||||
final String nativeName;
|
final String _nativeName;
|
||||||
final String? isoName;
|
final String? isoName;
|
||||||
final Locale? locale;
|
final Locale? locale;
|
||||||
}
|
}
|
||||||
|
|
||||||
String getSelectedLanguageName() => _getSelectedLanguage().nativeName;
|
AppLanguage getSelectedLanguage() {
|
||||||
Locale? getSelectedLocale() => _getSelectedLanguage().locale;
|
try {
|
||||||
|
final lang = Pref().getLanguageOr(0);
|
||||||
|
return supportedLanguages[lang]!;
|
||||||
|
} catch (_) {
|
||||||
|
return supportedLanguages[_AppLanguageEnum.systemDefault.index]!;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Locale? getSelectedLocale() => getSelectedLanguage().locale;
|
||||||
|
|
||||||
final supportedLanguages = {
|
final supportedLanguages = {
|
||||||
_AppLanguageEnum.systemDefault.index: AppLanguage(
|
_AppLanguageEnum.systemDefault.index: AppLanguage(
|
||||||
|
@ -68,12 +89,3 @@ enum _AppLanguageEnum {
|
||||||
chineseHans,
|
chineseHans,
|
||||||
chineseHant,
|
chineseHant,
|
||||||
}
|
}
|
||||||
|
|
||||||
AppLanguage _getSelectedLanguage() {
|
|
||||||
try {
|
|
||||||
final lang = Pref().getLanguageOr(0);
|
|
||||||
return supportedLanguages[lang]!;
|
|
||||||
} catch (_) {
|
|
||||||
return supportedLanguages[_AppLanguageEnum.systemDefault.index]!;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
@ -108,7 +108,7 @@ class _SettingsState extends State<Settings> {
|
||||||
[
|
[
|
||||||
ListTile(
|
ListTile(
|
||||||
title: Text(L10n.global().settingsLanguageTitle),
|
title: Text(L10n.global().settingsLanguageTitle),
|
||||||
subtitle: Text(language_util.getSelectedLanguageName()),
|
subtitle: Text(language_util.getSelectedLanguage().nativeName),
|
||||||
onTap: () => _onLanguageTap(context),
|
onTap: () => _onLanguageTap(context),
|
||||||
),
|
),
|
||||||
SwitchListTile(
|
SwitchListTile(
|
||||||
|
|
Loading…
Reference in a new issue