forked from cwtch.im/cwtch-ui
Add localization support for UI settings fields
+ allow for Polish translations
This commit is contained in:
parent
c51fd10650
commit
dd95e02f54
|
@ -1,6 +1,13 @@
|
||||||
{
|
{
|
||||||
"@@locale": "de",
|
"@@locale": "de",
|
||||||
"@@last_modified": "2021-07-07T18:42:50+02:00",
|
"@@last_modified": "2021-07-07T23:42:20+02:00",
|
||||||
|
"settingUIColumnOptionSame": "Same as portrait mode setting",
|
||||||
|
"settingUIColumnDouble14Ratio": "Double (1:4)",
|
||||||
|
"settingUIColumnDouble12Ratio": "Double (1:2)",
|
||||||
|
"settingUIColumnSingle": "Single",
|
||||||
|
"settingUIColumnLandscape": "UI Columns in Landscape Mode",
|
||||||
|
"settingUIColumnPortrait": "UI Columns in Portrait Mode",
|
||||||
|
"localePl": "Polish",
|
||||||
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
||||||
"tooltipReplyToThisMessage": "Reply to this message",
|
"tooltipReplyToThisMessage": "Reply to this message",
|
||||||
"tooltipRejectContactRequest": "Reject this contact request",
|
"tooltipRejectContactRequest": "Reject this contact request",
|
||||||
|
|
|
@ -1,6 +1,13 @@
|
||||||
{
|
{
|
||||||
"@@locale": "en",
|
"@@locale": "en",
|
||||||
"@@last_modified": "2021-07-07T18:42:50+02:00",
|
"@@last_modified": "2021-07-07T23:42:20+02:00",
|
||||||
|
"settingUIColumnOptionSame": "Same as portrait mode setting",
|
||||||
|
"settingUIColumnDouble14Ratio": "Double (1:4)",
|
||||||
|
"settingUIColumnDouble12Ratio": "Double (1:2)",
|
||||||
|
"settingUIColumnSingle": "Single",
|
||||||
|
"settingUIColumnLandscape": "UI Columns in Landscape Mode",
|
||||||
|
"settingUIColumnPortrait": "UI Columns in Portrait Mode",
|
||||||
|
"localePl": "Polish",
|
||||||
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
||||||
"tooltipReplyToThisMessage": "Reply to this message",
|
"tooltipReplyToThisMessage": "Reply to this message",
|
||||||
"tooltipRejectContactRequest": "Reject this contact request",
|
"tooltipRejectContactRequest": "Reject this contact request",
|
||||||
|
|
|
@ -1,6 +1,13 @@
|
||||||
{
|
{
|
||||||
"@@locale": "es",
|
"@@locale": "es",
|
||||||
"@@last_modified": "2021-07-07T18:42:50+02:00",
|
"@@last_modified": "2021-07-07T23:42:20+02:00",
|
||||||
|
"settingUIColumnOptionSame": "Same as portrait mode setting",
|
||||||
|
"settingUIColumnDouble14Ratio": "Double (1:4)",
|
||||||
|
"settingUIColumnDouble12Ratio": "Double (1:2)",
|
||||||
|
"settingUIColumnSingle": "Single",
|
||||||
|
"settingUIColumnLandscape": "UI Columns in Landscape Mode",
|
||||||
|
"settingUIColumnPortrait": "UI Columns in Portrait Mode",
|
||||||
|
"localePl": "Polish",
|
||||||
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
||||||
"tooltipReplyToThisMessage": "Reply to this message",
|
"tooltipReplyToThisMessage": "Reply to this message",
|
||||||
"tooltipRejectContactRequest": "Reject this contact request",
|
"tooltipRejectContactRequest": "Reject this contact request",
|
||||||
|
|
|
@ -1,8 +1,15 @@
|
||||||
{
|
{
|
||||||
"@@locale": "fr",
|
"@@locale": "fr",
|
||||||
"@@last_modified": "2021-07-07T18:42:50+02:00",
|
"@@last_modified": "2021-07-07T23:42:20+02:00",
|
||||||
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
"settingUIColumnOptionSame": "Même réglage que pour le mode portrait",
|
||||||
"tooltipReplyToThisMessage": "Reply to this message",
|
"settingUIColumnDouble14Ratio": "Double (1:4)",
|
||||||
|
"settingUIColumnDouble12Ratio": "Double (1:2)",
|
||||||
|
"settingUIColumnSingle": "Simple",
|
||||||
|
"settingUIColumnLandscape": "Colonnes de l'interface utilisateur en mode paysage",
|
||||||
|
"settingUIColumnPortrait": "Colonnes de l'interface utilisateur en mode portrait",
|
||||||
|
"localePl": "Polonais",
|
||||||
|
"tooltipRemoveThisQuotedMessage": "Supprimer le message cité.",
|
||||||
|
"tooltipReplyToThisMessage": "Répondre à ce message",
|
||||||
"tooltipRejectContactRequest": "Refuser cette demande de contact",
|
"tooltipRejectContactRequest": "Refuser cette demande de contact",
|
||||||
"tooltipAcceptContactRequest": "Acceptez cette demande de contact.",
|
"tooltipAcceptContactRequest": "Acceptez cette demande de contact.",
|
||||||
"notificationNewMessageFromGroup": "Nouveau message dans un groupe !",
|
"notificationNewMessageFromGroup": "Nouveau message dans un groupe !",
|
||||||
|
|
|
@ -1,6 +1,13 @@
|
||||||
{
|
{
|
||||||
"@@locale": "it",
|
"@@locale": "it",
|
||||||
"@@last_modified": "2021-07-07T18:42:50+02:00",
|
"@@last_modified": "2021-07-07T23:42:20+02:00",
|
||||||
|
"settingUIColumnOptionSame": "Same as portrait mode setting",
|
||||||
|
"settingUIColumnDouble14Ratio": "Double (1:4)",
|
||||||
|
"settingUIColumnDouble12Ratio": "Double (1:2)",
|
||||||
|
"settingUIColumnSingle": "Single",
|
||||||
|
"settingUIColumnLandscape": "UI Columns in Landscape Mode",
|
||||||
|
"settingUIColumnPortrait": "UI Columns in Portrait Mode",
|
||||||
|
"localePl": "Polish",
|
||||||
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
||||||
"tooltipReplyToThisMessage": "Reply to this message",
|
"tooltipReplyToThisMessage": "Reply to this message",
|
||||||
"tooltipRejectContactRequest": "Rifiuta questa richiesta di contatto",
|
"tooltipRejectContactRequest": "Rifiuta questa richiesta di contatto",
|
||||||
|
|
|
@ -1,6 +1,13 @@
|
||||||
{
|
{
|
||||||
"@@locale": "pl",
|
"@@locale": "pl",
|
||||||
"@@last_modified": "2021-07-07T18:42:50+02:00",
|
"@@last_modified": "2021-07-07T23:42:20+02:00",
|
||||||
|
"settingUIColumnOptionSame": "Same as portrait mode setting",
|
||||||
|
"settingUIColumnDouble14Ratio": "Double (1:4)",
|
||||||
|
"settingUIColumnDouble12Ratio": "Double (1:2)",
|
||||||
|
"settingUIColumnSingle": "Single",
|
||||||
|
"settingUIColumnLandscape": "UI Columns in Landscape Mode",
|
||||||
|
"settingUIColumnPortrait": "UI Columns in Portrait Mode",
|
||||||
|
"localePl": "Polish",
|
||||||
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
||||||
"tooltipReplyToThisMessage": "Reply to this message",
|
"tooltipReplyToThisMessage": "Reply to this message",
|
||||||
"tooltipRejectContactRequest": "Reject this contact request",
|
"tooltipRejectContactRequest": "Reject this contact request",
|
||||||
|
|
|
@ -1,6 +1,13 @@
|
||||||
{
|
{
|
||||||
"@@locale": "pt",
|
"@@locale": "pt",
|
||||||
"@@last_modified": "2021-07-07T18:42:50+02:00",
|
"@@last_modified": "2021-07-07T23:42:20+02:00",
|
||||||
|
"settingUIColumnOptionSame": "Same as portrait mode setting",
|
||||||
|
"settingUIColumnDouble14Ratio": "Double (1:4)",
|
||||||
|
"settingUIColumnDouble12Ratio": "Double (1:2)",
|
||||||
|
"settingUIColumnSingle": "Single",
|
||||||
|
"settingUIColumnLandscape": "UI Columns in Landscape Mode",
|
||||||
|
"settingUIColumnPortrait": "UI Columns in Portrait Mode",
|
||||||
|
"localePl": "Polish",
|
||||||
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
"tooltipRemoveThisQuotedMessage": "Remove quoted message.",
|
||||||
"tooltipReplyToThisMessage": "Reply to this message",
|
"tooltipReplyToThisMessage": "Reply to this message",
|
||||||
"tooltipRejectContactRequest": "Reject this contact request",
|
"tooltipRejectContactRequest": "Reject this contact request",
|
||||||
|
|
|
@ -6,6 +6,7 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:package_info_plus/package_info_plus.dart';
|
import 'package:package_info_plus/package_info_plus.dart';
|
||||||
|
|
||||||
import 'opaque.dart';
|
import 'opaque.dart';
|
||||||
|
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
|
||||||
|
|
||||||
const TapirGroupsExperiment = "tapir-groups-experiment";
|
const TapirGroupsExperiment = "tapir-groups-experiment";
|
||||||
|
|
||||||
|
@ -200,17 +201,16 @@ class Settings extends ChangeNotifier {
|
||||||
return DualpaneMode.Single;
|
return DualpaneMode.Single;
|
||||||
}
|
}
|
||||||
|
|
||||||
static String uiColumnModeToString(DualpaneMode m) {
|
static String uiColumnModeToString(DualpaneMode m, BuildContext context) {
|
||||||
// todo: translate
|
|
||||||
switch (m) {
|
switch (m) {
|
||||||
case DualpaneMode.Single:
|
case DualpaneMode.Single:
|
||||||
return "Single";
|
return AppLocalizations.of(context)!.settingUIColumnSingle;
|
||||||
case DualpaneMode.Dual1to2:
|
case DualpaneMode.Dual1to2:
|
||||||
return "Double (1:2)";
|
return AppLocalizations.of(context)!.settingUIColumnDouble12Ratio;
|
||||||
case DualpaneMode.Dual1to4:
|
case DualpaneMode.Dual1to4:
|
||||||
return "Double (1:4)";
|
return AppLocalizations.of(context)!.settingUIColumnDouble14Ratio;
|
||||||
case DualpaneMode.CopyPortrait:
|
case DualpaneMode.CopyPortrait:
|
||||||
return "Same as portrait mode setting";
|
return AppLocalizations.of(context)!.settingUIColumnOptionSame;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
import 'dart:io';
|
|
||||||
import 'package:cwtch/cwtch_icons_icons.dart';
|
import 'package:cwtch/cwtch_icons_icons.dart';
|
||||||
import 'package:package_info_plus/package_info_plus.dart';
|
import 'package:package_info_plus/package_info_plus.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:cwtch/opaque.dart';
|
|
||||||
import 'package:cwtch/settings.dart';
|
import 'package:cwtch/settings.dart';
|
||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
|
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
|
||||||
|
@ -80,7 +78,7 @@ class _GlobalSettingsViewState extends State<GlobalSettingsView> {
|
||||||
secondary: Icon(CwtchIcons.change_theme, color: settings.current().mainTextColor()),
|
secondary: Icon(CwtchIcons.change_theme, color: settings.current().mainTextColor()),
|
||||||
),
|
),
|
||||||
ListTile(
|
ListTile(
|
||||||
title: Text(/*AppLocalizations.of(context)!.settingLanguage*/ "UI Columns in Portrait Mode", style: TextStyle(color: settings.current().mainTextColor())),
|
title: Text(AppLocalizations.of(context)!.settingUIColumnPortrait, style: TextStyle(color: settings.current().mainTextColor())),
|
||||||
leading: Icon(Icons.table_chart, color: settings.current().mainTextColor()),
|
leading: Icon(Icons.table_chart, color: settings.current().mainTextColor()),
|
||||||
trailing: DropdownButton(
|
trailing: DropdownButton(
|
||||||
value: settings.uiColumnModePortrait.toString(),
|
value: settings.uiColumnModePortrait.toString(),
|
||||||
|
@ -91,11 +89,11 @@ class _GlobalSettingsViewState extends State<GlobalSettingsView> {
|
||||||
items: Settings.uiColumnModeOptions(false).map<DropdownMenuItem<String>>((DualpaneMode value) {
|
items: Settings.uiColumnModeOptions(false).map<DropdownMenuItem<String>>((DualpaneMode value) {
|
||||||
return DropdownMenuItem<String>(
|
return DropdownMenuItem<String>(
|
||||||
value: value.toString(),
|
value: value.toString(),
|
||||||
child: Text(Settings.uiColumnModeToString(value)),
|
child: Text(Settings.uiColumnModeToString(value, context)),
|
||||||
);
|
);
|
||||||
}).toList())),
|
}).toList())),
|
||||||
ListTile(
|
ListTile(
|
||||||
title: Text(/*AppLocalizations.of(context)!.settingLanguage*/ "UI Columns in Landscape Mode", style: TextStyle(color: settings.current().mainTextColor())),
|
title: Text(AppLocalizations.of(context)!.settingUIColumnLandscape, style: TextStyle(color: settings.current().mainTextColor())),
|
||||||
leading: Icon(Icons.table_chart, color: settings.current().mainTextColor()),
|
leading: Icon(Icons.table_chart, color: settings.current().mainTextColor()),
|
||||||
trailing: DropdownButton(
|
trailing: DropdownButton(
|
||||||
value: settings.uiColumnModeLandscape.toString(),
|
value: settings.uiColumnModeLandscape.toString(),
|
||||||
|
@ -106,7 +104,7 @@ class _GlobalSettingsViewState extends State<GlobalSettingsView> {
|
||||||
items: Settings.uiColumnModeOptions(true).map<DropdownMenuItem<String>>((DualpaneMode value) {
|
items: Settings.uiColumnModeOptions(true).map<DropdownMenuItem<String>>((DualpaneMode value) {
|
||||||
return DropdownMenuItem<String>(
|
return DropdownMenuItem<String>(
|
||||||
value: value.toString(),
|
value: value.toString(),
|
||||||
child: Text(Settings.uiColumnModeToString(value)),
|
child: Text(Settings.uiColumnModeToString(value, context)),
|
||||||
);
|
);
|
||||||
}).toList())),
|
}).toList())),
|
||||||
SwitchListTile(
|
SwitchListTile(
|
||||||
|
@ -209,6 +207,9 @@ String getLanguageFull(context, String languageCode) {
|
||||||
if (languageCode == "it") {
|
if (languageCode == "it") {
|
||||||
return AppLocalizations.of(context)!.localeIt;
|
return AppLocalizations.of(context)!.localeIt;
|
||||||
}
|
}
|
||||||
|
if (languageCode == "pl") {
|
||||||
|
return AppLocalizations.of(context)!.localePl;
|
||||||
|
}
|
||||||
return languageCode;
|
return languageCode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue