Verified Commit 74a1b179 authored by Marvin W.'s avatar Marvin W. 🐿
Browse files

Make strings translatable

parent f199f902
......@@ -5,19 +5,15 @@
package org.microg.gms.ui
import android.content.Intent
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import androidx.lifecycle.lifecycleScope
import androidx.preference.PreferenceManager
import com.google.android.gms.R
import com.google.android.gms.databinding.DeviceRegistrationFragmentBinding
import org.microg.gms.checkin.CheckinPrefs
import org.microg.gms.checkin.CheckinPrefs.PREF_ENABLE_CHECKIN
import org.microg.gms.checkin.TriggerReceiver
class DeviceRegistrationFragment : Fragment(R.layout.device_registration_fragment) {
private lateinit var binding: DeviceRegistrationFragmentBinding
......
......@@ -45,9 +45,9 @@ class DeviceRegistrationPreferencesFragment : PreferenceFragmentCompat() {
statusCategory.isVisible = CheckinPrefs.get(context).isEnabled
val checkinInfo = LastCheckinInfo.read(requireContext())
status.summary = if (checkinInfo.lastCheckin > 0) {
"Last registration: " + DateUtils.getRelativeTimeSpanString(checkinInfo.lastCheckin, System.currentTimeMillis(), 0)
getString(R.string.checkin_last_registration, DateUtils.getRelativeTimeSpanString(checkinInfo.lastCheckin, System.currentTimeMillis(), 0))
} else {
"Not registered"
getString(R.string.checkin_not_registered)
}
}
......
......@@ -4,19 +4,15 @@
*/
package org.microg.gms.ui
import android.content.Intent
import android.os.Bundle
import android.view.*
import androidx.fragment.app.Fragment
import androidx.lifecycle.lifecycleScope
import androidx.navigation.fragment.findNavController
import androidx.preference.*
import com.google.android.gms.R
import com.google.android.gms.databinding.PushNotificationFragmentBinding
import org.microg.gms.checkin.CheckinPrefs
import org.microg.gms.gcm.GcmPrefs
import org.microg.gms.gcm.McsService
import org.microg.gms.gcm.TriggerReceiver
class PushNotificationFragment : Fragment(R.layout.push_notification_fragment) {
lateinit var binding: PushNotificationFragmentBinding
......
......@@ -68,9 +68,9 @@ class PushNotificationPreferencesFragment : PreferenceFragmentCompat() {
handler.postDelayed(updateRunnable, UPDATE_INTERVAL)
pushStatusCategory.isVisible = GcmPrefs.get(context).isEnabled
pushStatus.summary = if (McsService.isConnected()) {
"Connected since: " + DateUtils.getRelativeTimeSpanString(McsService.getStartTimestamp(), System.currentTimeMillis(), 0)
getString(R.string.gcm_network_state_connected, DateUtils.getRelativeTimeSpanString(McsService.getStartTimestamp(), System.currentTimeMillis(), 0))
} else {
"Disconnected"
getString(R.string.gcm_network_state_disconnected)
}
}
......
......@@ -146,8 +146,8 @@ Dies kann einige Minuten dauern."</string>
<string name="gcm_unregister_confirm_message">Einige Apps registrieren sich nicht automatisch erneut und haben keine Möglichkeit dies manuell anzustoßen. Diese Apps funktionieren eventuell nach dem abmelden nicht mehr richtig.\nFortsetzen?</string>
<string name="gcm_unregister_after_deny_message">Du hast einer App die Erlaubnis der Registrierung entzogen, die bereits registriert ist.\nWillst du diese App jetzt auch abmelden damit sie zukünftig keine Push-Nachrichten erhält?</string>
<string name="gcm_messages_counter">Nachrichten: <xliff:g example="123">%1$d</xliff:g> (<xliff:g example="12345">%2$d</xliff:g> bytes)</string>
<string name="gcm_state_disconnected">Aktueller Zustand: Nicht verbunden</string>
<string name="gcm_state_connected">Aktueller Zustand: Verbunden seit <xliff:g example="2 hours ago">%1$s</xliff:g></string>
<string name="gcm_network_state_disconnected">Nicht verbunden</string>
<string name="gcm_network_state_connected">Verbunden seit <xliff:g example="2 hours ago">%1$s</xliff:g></string>
<string name="snet_intro">Google SafetyNet ist ein System um Geräte zu zertifizieren und so sicherzustellen, dass sie ausreichend geschützt und kompatibel mit Android sind. Einige Anwendungen benutzen SafetyNet aus Sicherheitsgründen oder um einen Kopierschutz zu erzwingen.\n\nmicroG GmsCore enthält eine freie Implementierung von SafetyNet, jedoch verlangen die Google-Server, dass die Anfragen durch das proprietäre DroidGuard signiert sind. Eine unschädliche gemachte Version von DroidGuard ist als separate "DroidGuard Helper" app verfügbar.</string>
......
......@@ -149,8 +149,8 @@ Ceci peut prendre plusieurs minutes."</string>
<string name="gcm_unregister_confirm_message">Certaines applications ne se réenregistrent pas et/ou ne fournisse pas de moyens de le faire manuellement. Ces applications peuvent ne plus fonctionner correctement après le désenregistrement.\nContinuer ?</string>
<string name="gcm_unregister_after_deny_message">Vous avez empêché une application déjà enregistrée de s’enregistrer pour recevoir des notifications push.\nVoulez-vous la désenregistrer maintenant pour qu’elle ne reçoive plus de notifications push à l’avenir ?</string>
<string name="gcm_messages_counter">Messages : <xliff:g example="123">%1$d</xliff:g> (<xliff:g example="12345">%2$d</xliff:g> octets)</string>
<string name="gcm_state_disconnected">Status actuel : Déconnecté</string>
<string name="gcm_state_connected">Status actuel : Connecté depuis <xliff:g example="2 hours ago">%1$s</xliff:g></string>
<string name="gcm_network_state_disconnected">Déconnecté</string>
<string name="gcm_network_state_connected">Connecté depuis <xliff:g example="2 hours ago">%1$s</xliff:g></string>
<string name="snet_intro">Google SafetyNet est un système de certification du terminal, assurant que celui-ci est correctement sécurisé et compatible avec Android CTS. Certaines applications utilisent SafetyNet pour des raisons de sécurité ou comme prérequis anti-altérations.\n\nmicroG GmsCore contient une implantation libre de SafetyNet, mais les serveurs officiels requièrent que les requêtes SafetyNet soient signées par le système propriétaire DroidGuard. Une version mise en « bac-à-sable » de DroidGuard est disponible dans une application séparée « DroidGuard Helper ».
</string>
......
......@@ -149,8 +149,6 @@ To zajmie kilka minut.</string>
<string name="gcm_unregister_confirm_message">Niektóre aplikacje nie rejestrują się automatycznie ponownie lub nie posiadają opcji do zrobienia tego ręcznie. Takie aplikacje po wyrejestrowaniu mogą nie działać prawidłowo.\nCzy chcesz kontynuować?</string>
<string name="gcm_unregister_after_deny_message">Odmówiłeś już zarejestrowanej aplikacji zarejestrować się w usłudze powiadomień ‘push’.\nCzy chcesz ją wyrejestrować, aby nie otrzymywała powiadomień ‘push’ w przyszłości?</string>
<string name="gcm_messages_counter">Wiadomości: <xliff:g example="123">%1$d</xliff:g> (<xliff:g example="12345">%2$d</xliff:g> bajtów)</string>
<string name="gcm_state_disconnected">Obecny stan: rozłączony</string>
<string name="gcm_state_connected">Obecny stan: połączony od <xliff:g example="2 hours ago">%1$s</xliff:g></string>
<string name="snet_intro">Google SafetyNet jest systemem certyfikacji urządzenia, który upewnia się czy urządzenie jest poprawnie zabezpieczone i kompatybilne z Android CTS. Niektóre aplikacje używają SafetyNet ze względów bezpieczeństwa lub jako przeciwśrodek do modyfikacji.\n\nUsługa microG GmsCore zawiera wolną implementację SafetyNet, ale oficjalny serwer wymaga by SafetyNet był podpisany przez własnościowy system DroidGuard. Specjalna wersja DroidGuard-a jest dostępna do pobrania jako oddzielna aplikacja “DroidGuard Helper” w repozytorium miroG w F-Droid.</string>
......
......@@ -131,7 +131,7 @@ Isso pode demorar alguns minutos."</string>
<string name="gcm_unregister_confirm_message">Algumas aplicações não registam automaticamente e/ou não fornecem uma opção para fazê-lo manualmente. Esses aplicativos podem não funcionar corretamente após o cancelamento do registro.\nContinuar?</string>
<string name="gcm_unregister_after_deny_message">Você negou um app para se registrar para notificações push que já está registrado.\nDeseja cancelar o registo agora para que não receba mensagens de envio no futuro?</string>
<string name="gcm_messages_counter">Mensagens: <xliff:g example="123">%1$d</xliff:g> (<xliff:g example="12345">%2$d</xliff:g> bytes)</string>
<string name="gcm_state_disconnected">Estado atual: desconectado</string>
<string name="gcm_state_connected">Estado atual: Conectado desde <xliff:g example="2 hours ago">%1$s</xliff:g></string>
<string name="gcm_network_state_disconnected">Desconectado</string>
<string name="gcm_network_state_connected">Conectado desde <xliff:g example="2 hours ago">%1$s</xliff:g></string>
</resources>
</resources>
......@@ -159,8 +159,6 @@
<string name="gcm_unregister_confirm_message">"Некоторые приложение автоматически не перепривязываются и/или не предоставляют возможности сделать это вручную. Такие приложения могут работать некорректно после отвязки.\nПродолжить?"</string>
<string name="gcm_unregister_after_deny_message">Вы запретили push-уведомления для приложения, которое уже привязано.\nВы хотите отвязать его сейчас чтобы больше не получать от него push-уведомлений?</string>
<string name="gcm_messages_counter">Уведомлений: <xliff:g example="123">%1$d</xliff:g> (<xliff:g example="12345">%2$d</xliff:g> bytes)</string>
<string name="gcm_state_disconnected">Текущий статус: Отключен</string>
<string name="gcm_state_connected">Текущий статус: Подключен <xliff:g example="2 hours ago">%1$s</xliff:g></string>
<string name="snet_intro">Google SafetyNet это система сертификации устройства, гарантирующая, что устройство корректно защищено и совместимо с Android CTS. Некоторые приложения используют SafetyNet из соображений безопасности или в качестве предварительной системы защиты от взлома.\n\nmicroG GmsCore содержит свободную реализацию SafetyNet, но официальный сервер требует, чтобы запросы были подписаны с помощью проприетарной системы DroidGuard. Изолированная версия DroidGuard доступна как отдельное приложение "DroidGuard Helper".</string>
......
......@@ -131,7 +131,5 @@
<string name="gcm_unregister_confirm_message">Неке се апликације не пријављују поново аутоматски и/или не пружају могућност да се то уради ручно. Ове апликације можда неће радити исправно након одјављивања.\nДа наставим?</string>
<string name="gcm_unregister_after_deny_message">Нисте дозволили апликацији да се пријави на гурана обавештења а која је већ пријављена.\nЖелите ли да је одјавите сада тако да убудуће не прима гурана обавештења?</string>
<string name="gcm_messages_counter">Порука: %1$d (%2$d бајта)</string>
<string name="gcm_state_disconnected">Тренутно стање: неповезан</string>
<string name="gcm_state_connected">Тренутно стање: повезан %1$s</string>
</resources>
</resources>
......@@ -156,8 +156,6 @@
<string name="gcm_unregister_confirm_message">Деякі додатки автоматично не прив\'язуються або/та не дозволяють зробити це вручну. Такі додатки можуть робити некоректно після відв\'язування.\nПродовжити?</string>
<string name="gcm_unregister_after_deny_message">Ви заборонили додатку push-повідомлення, який вже був прив\'язаний.\nВи бажаєте відв\'язати його зараз, аби більше не отримувати від нього push-повідомлень?</string>
<string name="gcm_messages_counter">Повідомлень: <xliff:g example="123">%1$d</xliff:g> (<xliff:g example="12345">%2$d</xliff:g> байт)</string>
<string name="gcm_state_disconnected">Поточний стан: Відключено</string>
<string name="gcm_state_connected">Поточний стан: Під\'єднано від <xliff:g example="2 hours ago">%1$s</xliff:g></string>
<string name="snet_intro">Google SafetyNet це система сертифікації пристрою, яка гарантує, що пристрій коректно захищено та сумісне із Android CTS. Деякі додатки використовують SafetyNet для безпеки або в якості попередньої системи захисту від злому.\n\nmicroG GmsCore містить вільну реалізацію SafetyNet, але офіційний сервер вимагає, аби запити були підписані за допомогою закритої програмної системи DroidGuard. Ізольована версія DroidGuard доступна для встановлення як окремий додаток \"DroidGuard Helper\".</string>
......
......@@ -137,8 +137,6 @@
<string name="gcm_unregister_after_deny_message">您拒絕了一個已經註冊的程式去註冊接收推送通知。
您是否想取消註冊讓它未來不再收到推送通知?</string>
<string name="gcm_messages_counter">已接收訊息:<xliff:g example="123">%1$d</xliff:g>個(<xliff:g example="12345">%2$d</xliff:g>位元組〉</string>
<string name="gcm_state_disconnected">現在狀態:未連接</string>
<string name="gcm_state_connected">現在狀態:自<xliff:g example="2 hours ago">%1$s</xliff:g>連接至今</string>
<string name="snet_intro">Google SafetyNet是一個確認手機被確實保護和相容於Android CTS的驗證系統。一些程式基於安全因素使用SafetyNet,一些則是以必須通過的形式來防止篡改。
......
......@@ -68,6 +68,7 @@ This can take a couple of minutes."</string>
<string name="menu_advanced">Advanced</string>
<string name="list_no_item_none">None</string>
<string name="list_item_see_all">See all</string>
<string name="games_title">Google Play Games</string>
<string name="games_info_title"><xliff:g example="F-Droid">%1$s</xliff:g> would like to use Play Games</string>
......@@ -137,6 +138,10 @@ This can take a couple of minutes."</string>
<string name="pref_checkin_enable_summary">Registers your device to Google services and creates a unique device identifier. microG strips identifying bits other than your Google account name from registration data.</string>
<string name="checkin_not_registered">Not registered</string>
<string name="checkin_last_registration">Last registration: <xliff:g example="Yesterday, 02:20 PM">%1$s</xliff:g></string>
<string name="pref_info_status">Status</string>
<string name="pref_more_settings">More</string>
<string name="pref_add_account_title">Account</string>
......@@ -165,8 +170,17 @@ This can take a couple of minutes."</string>
<string name="gcm_unregister_confirm_message">Some apps do not automatically re-register and/or do not provide an option to do so manually. These apps might not work correctly after unregistering.\nContinue?</string>
<string name="gcm_unregister_after_deny_message">You denied an app to register for push notifications that is already registered.\nDo you want to unregister it now so it does not receive push messages in the future?</string>
<string name="gcm_messages_counter">Messages: <xliff:g example="123">%1$d</xliff:g> (<xliff:g example="12345">%2$d</xliff:g> bytes)</string>
<string name="gcm_state_disconnected">Current State: Disconnected</string>
<string name="gcm_state_connected">Current State: Connected since <xliff:g example="2 hours ago">%1$s</xliff:g></string>
<string name="gcm_network_state_disconnected">Disconnected</string>
<string name="gcm_network_state_connected">Connected since <xliff:g example="2 hours ago">%1$s</xliff:g></string>
<string name="pref_push_app_allow_register_title">Allow registration</string>
<string name="pref_push_app_allow_register_summary">Allow the app to register for push notifications.</string>
<string name="pref_push_app_wake_for_delivery_title">Start app on push message</string>
<string name="pref_push_app_wake_for_delivery_summary">Start the app while in background to receive the incoming push messages.</string>
<string name="prefcat_push_apps_title">Apps using push notifications</string>
<string name="prefcat_push_apps_registered_title">Registered apps</string>
<string name="prefcat_push_apps_unregistered_title">Unregistered apps</string>
<string name="prefcat_push_networks_title">Networks to use for push notifications</string>
<string name="snet_intro">Google SafetyNet is a device certification system, ensuring that the device is properly secured and compatible with Android CTS. Some applications use SafetyNet for security reasons or as a prerequisite for tamper-protection.\n\nmicroG GmsCore contains a free implementation of SafetyNet, but the official server requires SafetyNet requests to be signed using the proprietary DroidGuard system. A sandboxed version of DroidGuard is available as a separate “DroidGuard Helper” app.</string>
......
......@@ -12,7 +12,7 @@
<Preference
android:key="pref_device_registration_status"
android:selectable="false"
android:title="Status"
android:title="@string/pref_info_status"
tools:summary="Last registration: 13 hours ago" />
</PreferenceCategory>
<PreferenceCategory android:layout="@layout/preference_category_no_label">
......
......@@ -25,7 +25,7 @@
<PreferenceCategory
android:key="prefcat_networks"
android:title="Networks to use for Cloud Messaging">
android:title="@string/prefcat_push_networks_title">
<ListPreference
android:defaultValue="0"
......@@ -60,4 +60,4 @@
android:title="@string/network_type_other"/>
</PreferenceCategory>
</PreferenceScreen>
\ No newline at end of file
</PreferenceScreen>
......@@ -10,17 +10,17 @@
android:title="Push notifications">
<PreferenceCategory
android:key="prefcat_push_apps"
android:title="Apps using push notifications">
android:title="@string/prefcat_push_apps_title">
<Preference
android:enabled="false"
android:key="pref_push_apps_none"
android:title="No apps"
android:title="@string/list_no_item_none"
tools:isPreferenceVisible="true" />
<Preference
android:icon="@drawable/ic_expand_apps"
android:key="pref_push_apps_all"
android:order="5"
android:title="See all" />
android:title="@string/list_item_see_all" />
</PreferenceCategory>
<PreferenceCategory
android:key="prefcat_push_status"
......
......@@ -7,32 +7,32 @@
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:title="Apps using push notifications">
android:title="@string/prefcat_push_apps_title">
<Preference
android:key="pref_push_apps_all_progress"
android:layout="@layout/preference_progress_bar"
app:allowDividerBelow="false" />
<PreferenceCategory
android:key="prefcat_push_apps_registered"
android:title="Registered apps"
android:title="@string/prefcat_push_apps_registered_title"
app:isPreferenceVisible="false"
tools:isPreferenceVisible="true">
<Preference
android:enabled="false"
android:key="pref_push_apps_registered_none"
android:title="No apps"
android:title="@string/list_no_item_none"
app:isPreferenceVisible="false"
tools:isPreferenceVisible="true" />
</PreferenceCategory>
<PreferenceCategory
android:key="prefcat_push_apps_unregistered"
android:title="Unregistered apps"
android:title="@string/prefcat_push_apps_unregistered_title"
app:isPreferenceVisible="false"
tools:isPreferenceVisible="true">
<Preference
android:enabled="false"
android:key="pref_push_apps_unregistered_none"
android:title="No apps"
android:title="@string/list_no_item_none"
app:isPreferenceVisible="false"
tools:isPreferenceVisible="true" />
</PreferenceCategory>
......
......@@ -14,15 +14,15 @@
android:defaultValue="true"
android:key="pref_push_app_allow_register"
android:persistent="false"
android:summary="Allow the app to register for push notifications."
android:title="Allow registration" />
android:summary="@string/pref_push_app_allow_register_summary"
android:title="@string/pref_push_app_allow_register_title" />
<SwitchPreference
android:defaultValue="true"
android:key="pref_push_app_wake_for_delivery"
android:persistent="false"
android:summary="Start the app while in background to receive the incoming push messages."
android:title="Start app on push message" />
android:summary="@string/pref_push_app_wake_for_delivery_summary"
android:title="@string/pref_push_app_wake_for_delivery_title" />
</PreferenceCategory>
......@@ -31,7 +31,7 @@
android:layout="@layout/preference_category_no_label">
<Preference
android:key="pref_push_app_unregister"
android:title="Unregister" />
android:title="@string/gcm_unregister_app" />
</PreferenceCategory>
<PreferenceCategory android:layout="@layout/preference_category_no_label">
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment