From a2173abf6178f1e694e06a4d38dbe92ef7c8bda0 Mon Sep 17 00:00:00 2001 From: Sad Ellie Date: Tue, 5 Sep 2023 13:02:18 +0300 Subject: [PATCH] Add an option to change in-app language closes #77 --- app/build.gradle.kts | 1 + app/src/main/AndroidManifest.xml | 11 ++++- .../java/com/sadellie/unitto/MainActivity.kt | 4 +- app/src/main/res/values/themes.xml | 2 +- core/base/src/main/res/values/strings.xml | 9 ++++ core/base/src/main/res/xml/locales_config.xml | 26 +++++++++++ feature/settings/build.gradle.kts | 1 + .../unitto/feature/settings/SettingsScreen.kt | 46 ++++++++++++++++++- gradle/libs.versions.toml | 2 + 9 files changed, 96 insertions(+), 6 deletions(-) create mode 100644 core/base/src/main/res/xml/locales_config.xml diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 45c8d18f..ea82478d 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -117,6 +117,7 @@ dependencies { implementation(libs.com.github.sadellie.themmo) implementation(libs.com.google.accompanist.systemuicontroller) implementation(libs.androidx.datastore) + implementation(libs.androidx.appcompat) implementation(project(mapOf("path" to ":feature:converter"))) implementation(project(mapOf("path" to ":feature:calculator"))) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 4d47d3f2..ba0a4a1f 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -7,8 +7,8 @@ android:name=".UnittoApplication" android:icon="@mipmap/ic_launcher_icon" android:label="@string/calculator" - android:supportsRtl="false" + android:localeConfig="@xml/locales_config" android:theme="@style/Theme.Unitto"> + + + + \ No newline at end of file diff --git a/app/src/main/java/com/sadellie/unitto/MainActivity.kt b/app/src/main/java/com/sadellie/unitto/MainActivity.kt index b68879ed..bdb22819 100644 --- a/app/src/main/java/com/sadellie/unitto/MainActivity.kt +++ b/app/src/main/java/com/sadellie/unitto/MainActivity.kt @@ -23,8 +23,8 @@ import android.content.Context import android.os.Bundle import android.util.AttributeSet import android.view.View -import androidx.activity.ComponentActivity import androidx.activity.compose.setContent +import androidx.appcompat.app.AppCompatActivity import androidx.core.view.WindowCompat import androidx.lifecycle.compose.collectAsStateWithLifecycle import com.sadellie.unitto.data.userprefs.UserPreferencesRepository @@ -32,7 +32,7 @@ import dagger.hilt.android.AndroidEntryPoint import javax.inject.Inject @AndroidEntryPoint -internal class MainActivity : ComponentActivity() { +internal class MainActivity : AppCompatActivity() { @Inject lateinit var userPrefsRepository: UserPreferencesRepository diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index 4f6a9a46..ecaeb63c 100644 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -1,5 +1,5 @@ -