]> gitweb.stoutner.com Git - PrivacyBrowserAndroid.git/commitdiff
Enable per-app language support. https://redmine.stoutner.com/issues/910
authorSoren Stoutner <soren@stoutner.com>
Thu, 3 Nov 2022 20:25:55 +0000 (13:25 -0700)
committerSoren Stoutner <soren@stoutner.com>
Thu, 3 Nov 2022 20:25:55 +0000 (13:25 -0700)
app/build.gradle
app/src/main/AndroidManifest.xml
app/src/main/res/xml/file_provider_paths.xml
app/src/main/res/xml/locales_config.xml [new file with mode: 0644]

index e36ed76819f9105483a20f3ab99e7a1f3f42f51e..ae0f7fa964f07de78a78b4fa1ec535dd20233df6 100644 (file)
@@ -30,6 +30,7 @@ android {
         targetSdk 33
         versionCode 60
         versionName "3.11"
+        resConfigs "en", "de", "es", "fr", "it", "pt-rBR", "ru", "tr"
     }
 
     buildTypes {
@@ -80,7 +81,7 @@ dependencies {
     implementation 'androidx.webkit:webkit:1.5.0'
 
     // Include the Kotlin standard library.  This should be the same version number listed in project build.gradle.
-    implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.10'
+    implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20'
 
     // Include the Google material library.
     implementation 'com.google.android.material:material:1.7.0'
index 8d99e27640232abe80ced81ecefa4db8abc3738c..4cfa09bd9aa54ee328ed82048781cdbf24caba59 100644 (file)
@@ -58,6 +58,7 @@
         android:theme="@style/PrivacyBrowser"
         android:networkSecurityConfig="@xml/network_security_config"
         android:enableOnBackInvokedCallback="true"
+        android:localeConfig="@xml/locales_config"
         tools:ignore="DataExtractionRules,UnusedAttribute" >
 
         <!-- If `android:name="android.webkit.WebView.MetricsOptOut"` is not `true` then `WebViews` will upload metrics to Google.  <https://developer.android.com/reference/android/webkit/WebView.html> -->
index d3af1279b47c276c6fff0705c93f48fc89ae3cfc..ffbe1760e991d9f2e6f48339a684832492f34e2f 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 
 <!--
-  Copyright © 2018,2021-2022 Soren Stoutner <soren@stoutner.com>.
+  Copyright 2018,2021-2022 Soren Stoutner <soren@stoutner.com>.
 
   This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
 
@@ -22,4 +22,4 @@
     <cache-path
         name="private-cache-directory"
         path="." />
-</paths>
\ No newline at end of file
+</paths>
diff --git a/app/src/main/res/xml/locales_config.xml b/app/src/main/res/xml/locales_config.xml
new file mode 100644 (file)
index 0000000..8f71588
--- /dev/null
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<!--
+  Copyright 2022 Soren Stoutner <soren@stoutner.com>.
+
+  This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
+
+  Privacy Browser Android is free software: you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation, either version 3 of the License, or
+  (at your option) any later version.
+
+  Privacy Browser Android is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
+
+  You should have received a copy of the GNU General Public License
+  along with Privacy Browser Android.  If not, see <http://www.gnu.org/licenses/>. -->
+
+<!-- https://developer.android.com/guide/topics/resources/app-languages#app-language-settings -->
+<locale-config xmlns:android="http://schemas.android.com/apk/res/android">
+    <locale android:name="en"/>  <!-- English. -->
+    <locale android:name="de"/>  <!-- German. -->
+    <locale android:name="es"/>  <!-- Spanish. -->
+    <locale android:name="fr"/>  <!-- French. -->
+    <locale android:name="it"/>  <!-- Italian. -->
+    <locale android:name="pt-BR"/>  <!-- Brazilian Portuguese. -->
+    <locale android:name="ru"/>  <!-- Russian. -->
+    <locale android:name="tr"/>  <!-- Turkish. -->
+</locale-config>