From 77eac7604b0a33f00d1a9d7dc73346e8e508bb2a Mon Sep 17 00:00:00 2001 From: awawa Date: Sun, 3 May 2026 21:57:26 +0300 Subject: [PATCH 1/9] Translations --- .../screens/onboarding/pages/WelcomePage.kt | 5 ++-- app/src/main/res/values-ru/strings.xml | 23 +++++++++++++++++++ app/src/main/res/values/strings.xml | 2 ++ build.gradle.kts | 4 ++-- 4 files changed, 30 insertions(+), 4 deletions(-) create mode 100644 app/src/main/res/values-ru/strings.xml diff --git a/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/WelcomePage.kt b/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/WelcomePage.kt index a54e9cf25..782e74a00 100644 --- a/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/WelcomePage.kt +++ b/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/WelcomePage.kt @@ -29,6 +29,7 @@ import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import network.columba.app.R +import androidx.compose.ui.res.stringResource /** * Welcome page - introduces privacy-first messaging. @@ -82,7 +83,7 @@ fun WelcomePage( // Title Text( - text = "Welcome to Columba", + text = stringResource(R.string.welcome_to, stringResource(R.string.app_name)), style = MaterialTheme.typography.headlineMedium, fontWeight = FontWeight.Bold, color = MaterialTheme.colorScheme.onBackground, @@ -93,7 +94,7 @@ fun WelcomePage( // Subtitle Text( - text = "A private messenger that requires:", + text = stringResource(R.string.messenger_requires), style = MaterialTheme.typography.bodyLarge, color = MaterialTheme.colorScheme.onSurfaceVariant, textAlign = TextAlign.Center, diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml new file mode 100644 index 000000000..3e76866f6 --- /dev/null +++ b/app/src/main/res/values-ru/strings.xml @@ -0,0 +1,23 @@ + + + Columba + Входящий аудиовызов + Ответить + Отклонить + Ответить на вызов + Отклонить вызов + На телефоне не найден файловый менеджер + Геолокация на карте + Перезапуск сервиса Reticulum \u2026 + Columba сейчас офлайн + Ошибка подключения + Переподключение\u2026 + Переподключиться + Процесс переподключения + Удалить интерфейс + Детали + Действия + Редактировать + "Приватный мессерждер, для работы которого: " + Добро пожаловть в %1$s + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index c1ba74421..bbded63a1 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -30,4 +30,6 @@ View interface details Interface actions Edit interface + A private messenger that requires: + Welcome to %1$s diff --git a/build.gradle.kts b/build.gradle.kts index eff049129..d060c9923 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,7 +1,7 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. plugins { - id("com.android.application") version "9.1.0" apply false - id("com.android.library") version "9.1.0" apply false + id("com.android.application") version "9.2.0" apply false + id("com.android.library") version "9.2.0" apply false id("org.jetbrains.kotlin.plugin.compose") version "2.3.20" apply false id("com.google.dagger.hilt.android") version "2.59.2" apply false id("com.google.devtools.ksp") version "2.3.6" apply false From bcaae40f1bb37fcc80a61a593adf6af722beea50 Mon Sep 17 00:00:00 2001 From: awawa Date: Mon, 4 May 2026 01:30:16 +0300 Subject: [PATCH 2/9] Translations --- .../columba/app/ui/screens/WelcomeScreen.kt | 4 +- .../onboarding/OnboardingPagerScreen.kt | 5 +- .../onboarding/pages/ConnectivityPage.kt | 17 ++++--- .../screens/onboarding/pages/IdentityPage.kt | 18 ++++--- .../onboarding/pages/PermissionsPage.kt | 28 +++++----- .../screens/onboarding/pages/WelcomePage.kt | 12 ++--- app/src/main/res/values-ru/strings.xml | 51 ++++++++++++++++++- app/src/main/res/values/strings.xml | 48 +++++++++++++++++ 8 files changed, 145 insertions(+), 38 deletions(-) diff --git a/app/src/main/java/network/columba/app/ui/screens/WelcomeScreen.kt b/app/src/main/java/network/columba/app/ui/screens/WelcomeScreen.kt index 1d0a20efb..771fd3900 100644 --- a/app/src/main/java/network/columba/app/ui/screens/WelcomeScreen.kt +++ b/app/src/main/java/network/columba/app/ui/screens/WelcomeScreen.kt @@ -41,6 +41,8 @@ import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import androidx.hilt.navigation.compose.hiltViewModel import network.columba.app.viewmodel.OnboardingViewModel +import androidx.compose.ui.res.stringResource +import network.columba.app.R /** * Welcome screen shown on first launch for fresh installs. @@ -208,7 +210,7 @@ fun WelcomeScreen( enabled = !state.isSaving, ) { Text( - text = "Skip", + text = stringResource(R.string.skip), color = MaterialTheme.colorScheme.onSurfaceVariant, ) } diff --git a/app/src/main/java/network/columba/app/ui/screens/onboarding/OnboardingPagerScreen.kt b/app/src/main/java/network/columba/app/ui/screens/onboarding/OnboardingPagerScreen.kt index 628f8dc21..9cd333163 100644 --- a/app/src/main/java/network/columba/app/ui/screens/onboarding/OnboardingPagerScreen.kt +++ b/app/src/main/java/network/columba/app/ui/screens/onboarding/OnboardingPagerScreen.kt @@ -46,7 +46,8 @@ import network.columba.app.util.BatteryOptimizationManager import network.columba.app.viewmodel.DebugViewModel import network.columba.app.viewmodel.OnboardingViewModel import kotlinx.coroutines.launch - +import androidx.compose.ui.res.stringResource +import network.columba.app.R /** * Main onboarding screen with horizontal pager for multi-step setup. * Guides users through identity setup, connectivity options, and permissions. @@ -293,7 +294,7 @@ private fun TopBar( modifier = Modifier.align(Alignment.CenterEnd), ) { Text( - text = "Skip", + text = stringResource(R.string.skip), color = MaterialTheme.colorScheme.onSurfaceVariant, ) } diff --git a/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/ConnectivityPage.kt b/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/ConnectivityPage.kt index 96a617944..09a7add4a 100644 --- a/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/ConnectivityPage.kt +++ b/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/ConnectivityPage.kt @@ -36,6 +36,9 @@ import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import network.columba.app.ui.screens.onboarding.OnboardingInterfaceType +import androidx.compose.ui.res.stringResource +import network.columba.app.R + /** * Connectivity page - allows user to select which network interfaces to enable. @@ -72,7 +75,7 @@ fun ConnectivityPage( // Title Text( - text = "How will you connect?", + text = stringResource(R.string.connection_methods), style = MaterialTheme.typography.headlineMedium, fontWeight = FontWeight.Bold, color = MaterialTheme.colorScheme.onBackground, @@ -83,7 +86,7 @@ fun ConnectivityPage( // Subtitle Text( - text = "Select the networks you'd like to use:", + text = stringResource(R.string.connection_methods_description), style = MaterialTheme.typography.bodyLarge, color = MaterialTheme.colorScheme.onSurfaceVariant, textAlign = TextAlign.Center, @@ -108,8 +111,8 @@ fun ConnectivityPage( icon = Icons.Default.Bluetooth, statusText = when { - blePermissionsDenied -> "Permissions denied" - blePermissionsGranted -> "Permissions granted" + blePermissionsDenied -> stringResource(R.string.permission_denied) + blePermissionsGranted -> stringResource(R.string.permission_granted) else -> null }, statusIsError = blePermissionsDenied, @@ -137,7 +140,7 @@ fun ConnectivityPage( // Helper text Text( - text = "You can configure these later in Settings", + text = stringResource(R.string.configure_in_settings), style = MaterialTheme.typography.bodyMedium, color = MaterialTheme.colorScheme.onSurfaceVariant, textAlign = TextAlign.Center, @@ -158,7 +161,7 @@ fun ConnectivityPage( .height(56.dp), shape = RoundedCornerShape(12.dp), ) { - Text("Back") + Text(stringResource(R.string.back)) } Button( @@ -169,7 +172,7 @@ fun ConnectivityPage( .height(56.dp), shape = RoundedCornerShape(12.dp), ) { - Text("Continue") + Text(stringResource(R.string.nextAction)) } } diff --git a/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/IdentityPage.kt b/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/IdentityPage.kt index e4d7cf8ca..2a48c12f3 100644 --- a/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/IdentityPage.kt +++ b/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/IdentityPage.kt @@ -30,6 +30,10 @@ import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.input.ImeAction import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp +import androidx.compose.ui.res.stringResource +import network.columba.app.R + + /** * Identity page - allows user to set their display name. @@ -67,7 +71,7 @@ fun IdentityPage( // Title Text( - text = "Your Identity", + text = stringResource(R.string.your_identity), style = MaterialTheme.typography.headlineMedium, fontWeight = FontWeight.Bold, color = MaterialTheme.colorScheme.onBackground, @@ -78,7 +82,7 @@ fun IdentityPage( // Subtitle Text( - text = "Choose a display name others will see:", + text = stringResource(R.string.choose_your_name), style = MaterialTheme.typography.bodyLarge, color = MaterialTheme.colorScheme.onSurfaceVariant, textAlign = TextAlign.Center, @@ -90,8 +94,8 @@ fun IdentityPage( OutlinedTextField( value = displayName, onValueChange = onDisplayNameChange, - label = { Text("Display Name") }, - placeholder = { Text("Anonymous Peer") }, + label = { Text(stringResource(R.string.display_name)) }, + placeholder = { Text(stringResource(R.string.name_example)) }, singleLine = true, modifier = Modifier.fillMaxWidth(), keyboardOptions = @@ -112,7 +116,7 @@ fun IdentityPage( // Helper text Text( - text = "You can change this anytime, or create multiple identities for different contexts.", + text = stringResource(R.string.name_change_description), style = MaterialTheme.typography.bodyMedium, color = MaterialTheme.colorScheme.onSurfaceVariant, textAlign = TextAlign.Center, @@ -133,7 +137,7 @@ fun IdentityPage( .height(56.dp), shape = RoundedCornerShape(12.dp), ) { - Text("Back") + Text(stringResource(R.string.back)) } Button( @@ -147,7 +151,7 @@ fun IdentityPage( .height(56.dp), shape = RoundedCornerShape(12.dp), ) { - Text("Continue") + Text(stringResource(R.string.nextAction)) } } diff --git a/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/PermissionsPage.kt b/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/PermissionsPage.kt index ff554d2d8..14ee3a3de 100644 --- a/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/PermissionsPage.kt +++ b/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/PermissionsPage.kt @@ -33,6 +33,8 @@ import androidx.compose.ui.graphics.vector.ImageVector import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp +import androidx.compose.ui.res.stringResource +import network.columba.app.R /** * Permissions page - explains and requests notification and battery permissions. @@ -69,7 +71,7 @@ fun PermissionsPage( // Title Text( - text = "Stay Connected", + text = stringResource(R.string.stay_connected), style = MaterialTheme.typography.headlineMedium, fontWeight = FontWeight.Bold, color = MaterialTheme.colorScheme.onBackground, @@ -80,7 +82,7 @@ fun PermissionsPage( // Subtitle Text( - text = "Columba can notify you when:", + text = stringResource(R.string.can_notify_you, stringResource(R.string.app_name)), style = MaterialTheme.typography.bodyLarge, color = MaterialTheme.colorScheme.onSurfaceVariant, textAlign = TextAlign.Center, @@ -93,9 +95,9 @@ fun PermissionsPage( modifier = Modifier.padding(horizontal = 32.dp), verticalArrangement = Arrangement.spacedBy(4.dp), ) { - FeatureItem("New messages arrive") - FeatureItem("Someone adds you as a contact") - FeatureItem("Delivery confirmations are received") + FeatureItem(stringResource(R.string.item_new_messages)) + FeatureItem(stringResource(R.string.item_some_add_contact)) + FeatureItem(stringResource(R.string.item_delivery_confirmed)) } Spacer(modifier = Modifier.height(24.dp)) @@ -103,8 +105,8 @@ fun PermissionsPage( // Notification permission card PermissionCard( icon = Icons.Default.Notifications, - title = "Notifications", - description = "Get alerts for new messages", + title = stringResource(R.string.notifications), + description = stringResource(R.string.notifications_description), isGranted = notificationsGranted, onEnable = onEnableNotifications, ) @@ -114,9 +116,9 @@ fun PermissionsPage( // Battery optimization card PermissionCard( icon = Icons.Default.BatteryChargingFull, - title = "Unrestricted Battery", - description = "Receive messages even when phone is idle", - secondaryDescription = "Prevents Android from pausing Columba", + title = stringResource(R.string.unrestricted_battery), + description = stringResource(R.string.unrestricted_battery_description), + secondaryDescription = stringResource(R.string.unrestricted_battery_secondDescription, stringResource(R.string.app_name)), isGranted = batteryOptimizationExempt, onEnable = onEnableBatteryOptimization, ) @@ -136,7 +138,7 @@ fun PermissionsPage( .height(56.dp), shape = RoundedCornerShape(12.dp), ) { - Text("Back") + Text(stringResource(R.string.back)) } Button( @@ -147,7 +149,7 @@ fun PermissionsPage( .height(56.dp), shape = RoundedCornerShape(12.dp), ) { - Text("Continue") + Text(stringResource(R.string.nextAction)) } } @@ -274,7 +276,7 @@ private fun PermissionCard( onClick = onEnable, shape = RoundedCornerShape(8.dp), ) { - Text("Enable") + Text(stringResource(R.string.enable)) } } } diff --git a/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/WelcomePage.kt b/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/WelcomePage.kt index 782e74a00..6cda6e790 100644 --- a/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/WelcomePage.kt +++ b/app/src/main/java/network/columba/app/ui/screens/onboarding/pages/WelcomePage.kt @@ -103,17 +103,17 @@ fun WelcomePage( Spacer(modifier = Modifier.height(24.dp)) // Privacy features - PrivacyFeature(text = "No phone number") + PrivacyFeature(text = stringResource(R.string.no_phone_number)) Spacer(modifier = Modifier.height(12.dp)) - PrivacyFeature(text = "No email address") + PrivacyFeature(text = stringResource(R.string.no_email_address)) Spacer(modifier = Modifier.height(12.dp)) - PrivacyFeature(text = "No sign-up or accounts") + PrivacyFeature(text = stringResource(R.string.no_accounts)) Spacer(modifier = Modifier.height(32.dp)) // Identity explanation Text( - text = "Your identity is generated and stored securely on your device. You control it completely.", + text = stringResource(R.string.welcome_security_description), style = MaterialTheme.typography.bodyMedium, color = MaterialTheme.colorScheme.onSurfaceVariant, textAlign = TextAlign.Center, @@ -132,7 +132,7 @@ fun WelcomePage( shape = RoundedCornerShape(12.dp), ) { Text( - text = "Get Started", + text = stringResource(R.string.get_started), style = MaterialTheme.typography.titleMedium, ) } @@ -144,7 +144,7 @@ fun WelcomePage( onClick = onRestoreFromBackup, ) { Text( - text = "Restore from backup", + text = stringResource(R.string.restore_from_backup), color = MaterialTheme.colorScheme.primary, ) } diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 3e76866f6..ff6ae767d 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -9,7 +9,7 @@ На телефоне не найден файловый менеджер Геолокация на карте Перезапуск сервиса Reticulum \u2026 - Columba сейчас офлайн + Columba сейчас оффлайн Ошибка подключения Переподключение\u2026 Переподключиться @@ -18,6 +18,53 @@ Детали Действия Редактировать - "Приватный мессерждер, для работы которого: " + "Приватный мессерждер, для которого: " Добро пожаловть в %1$s + Не нужен номер телефона + Не нужен Email + Не нужна авторизация или аккаунты + Вашш профиль создается и надежно хранится на вашем устройстве. Только вы контролируете его + Начать + Восстановить из бэкапа + Ваш профиль + Напишите ваш никнейм, который будет виден всем + Никнейм + Анонимная нода + Вы можете сменить его в любое время или создать другие профили + Назад + Далее + Как вы хотите подключиться? + Выберите типы сетей, которые вы будете использовать: + Разрешение отклонено + Разрешение предоставлено + Вы можете изменить это в настройках + Оставайтесь на связи + %1$s может оповестить вас когда: + Пришло новое сообщение + Кто-то добавил вас в контакты + Получено подтверждение о доставке сообщения + Уведомления + Пропустить + Получение уведомлений о новых сообщениях + Без ограничений батареи + Получение уведомлений в режиме ожидания + Защищает %1$s от остановки в фоне + Включить + Выключить + Вы всё настроили! + Итого + Никнейм + Сети + Ничего не выбранно + Включены + Выключены + Ограниченно + Нет ограничения + Батарея + Показать QR код + Поделитесь своим QR-кодом, чтобы другие могли добавить вас в контакты. + Настроить LoRa + Начать общение + Поделиться профилем + Добавьте меня через reticulum: \\n\\n%1$s\\n%2$s diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index bbded63a1..fa8da204d 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -32,4 +32,52 @@ Edit interface A private messenger that requires: Welcome to %1$s + No phone number + No email address + No sign-up or accounts + Your identity is generated and stored securely on your device. You control it completely. + Get Started + Restore from backup + Your Identity + Choose a display name others will see: + Display Name + Anonymous Peer + Columba + You can change this anytime, or create multiple identities for different contexts. + Back + Continue + How will you connect? + Select the networks you\'d like to use: + Permission denied + Permission granted + You can configure these in Settings. + Stay connected + %1$s can notify you when: + New messages arrive + Someone adds you as a contact + Delivery confirmations are received + Notifications + Skip + Get alerts for new messages + Unrestricted Battery + Receive messages even when phone is idle + Prevents Android from pausing %1$s + Enable + Disable + You\'re all set! + Summary + Identity + Networks + None seleced + Enabled + Disabled + Restricted + Unrestricted + Battery + Show QR code + Share your identity QR code to let others add you as a contact. + Configure LoRa + Start Messaging + Share identity + Add me on Reticulum: \\n\\n%1$s\\n%2$s From 5fffbbabcfc06ace5397e5f6bc9e7b1f6be92f61 Mon Sep 17 00:00:00 2001 From: awawa Date: Mon, 4 May 2026 01:44:01 +0300 Subject: [PATCH 3/9] Update app/src/main/res/values/strings.xml Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> --- app/src/main/res/values/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index fa8da204d..87991a661 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -79,5 +79,5 @@ Configure LoRa Start Messaging Share identity - Add me on Reticulum: \\n\\n%1$s\\n%2$s + Add me on Reticulum: \n\n%1$s\n%2$s From de830a2a935d67435cf0766e056ddb916544cf6f Mon Sep 17 00:00:00 2001 From: awawa Date: Mon, 4 May 2026 01:44:57 +0300 Subject: [PATCH 4/9] Update app/src/main/res/values/strings.xml Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> --- app/src/main/res/values/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 87991a661..afce25d48 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -68,7 +68,7 @@ Summary Identity Networks - None seleced + None selected Enabled Disabled Restricted From a88628e8a27d6d3018ab74c571d5490b82466c18 Mon Sep 17 00:00:00 2001 From: awawa Date: Mon, 4 May 2026 01:52:24 +0300 Subject: [PATCH 5/9] Fix typos in Russian strings --- app/src/main/res/values-ru/strings.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index ff6ae767d..bb6e85bdd 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -18,7 +18,7 @@ Детали Действия Редактировать - "Приватный мессерждер, для которого: " + "Приватный мессенджер, для которого: " Добро пожаловть в %1$s Не нужен номер телефона Не нужен Email @@ -55,7 +55,7 @@ Итого Никнейм Сети - Ничего не выбранно + Ничего не выбрано Включены Выключены Ограниченно From 614b6799845a44258af024f711cf6bf7f2461057 Mon Sep 17 00:00:00 2001 From: awawa Date: Mon, 4 May 2026 22:50:10 +0300 Subject: [PATCH 6/9] Remove app_name --- app/src/main/res/values/strings.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index afce25d48..c957d1baf 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -42,7 +42,6 @@ Choose a display name others will see: Display Name Anonymous Peer - Columba You can change this anytime, or create multiple identities for different contexts. Back Continue From f5b8f14912a8cc4883b688e02689294f62729d53 Mon Sep 17 00:00:00 2001 From: awawa Date: Mon, 4 May 2026 22:51:53 +0300 Subject: [PATCH 7/9] Remove app_name --- app/src/main/res/values-ru/strings.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index bb6e85bdd..c16f52cdd 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -1,6 +1,5 @@ - Columba Входящий аудиовызов Ответить Отклонить From 98f1378efc29749aa588440f92c4e2bbe42d7e2e Mon Sep 17 00:00:00 2001 From: awawa Date: Mon, 4 May 2026 23:35:45 +0300 Subject: [PATCH 8/9] Fix typo in Russian strings.xml --- app/src/main/res/values-ru/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index c16f52cdd..5bd0093fa 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -54,7 +54,7 @@ Итого Никнейм Сети - Ничего не выбрано + Ничего не выбрано Включены Выключены Ограниченно From b18aabf26dbd0ab88f81f7b1fc1beb889e29e69e Mon Sep 17 00:00:00 2001 From: awawa Date: Mon, 4 May 2026 23:40:39 +0300 Subject: [PATCH 9/9] Fix typos in Russian strings.xml --- app/src/main/res/values-ru/strings.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 5bd0093fa..2fe07d9b4 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -17,12 +17,12 @@ Детали Действия Редактировать - "Приватный мессенджер, для которого: " - Добро пожаловть в %1$s + Приватный мессенджер, для которого: + Добро пожаловать в %1$s Не нужен номер телефона Не нужен Email Не нужна авторизация или аккаунты - Вашш профиль создается и надежно хранится на вашем устройстве. Только вы контролируете его + Ваш профиль создается и надежно хранится на вашем устройстве. Только вы контролируете его Начать Восстановить из бэкапа Ваш профиль @@ -65,5 +65,5 @@ Настроить LoRa Начать общение Поделиться профилем - Добавьте меня через reticulum: \\n\\n%1$s\\n%2$s + Добавьте меня через reticulum: \n\n%1$s\n%2$s