From 352c25c889f177fb6ffedc85e10e9c3034977ce3 Mon Sep 17 00:00:00 2001 From: Zakir Sheikh Date: Wed, 27 Nov 2024 12:22:52 +0530 Subject: [PATCH 1/8] [FIX] Removed common fields referenced by &fieldname; from string resource, as I believe these might be hard to translate. [FIX] Fixed issue with the top bar of the Timeline screen. [CHORE] Updated the names of string resources to reflect the rules of defining strings. --- .idea/compiler.xml | 2 +- app/build.gradle.kts | 4 +- app/src/main/java/com/zs/gallery/Gallery.kt | 9 +-- .../main/java/com/zs/gallery/MainActivity.kt | 2 +- .../java/com/zs/gallery/common/Backdrop.kt | 2 +- .../java/com/zs/gallery/files/Timeline.kt | 9 +-- .../java/com/zs/gallery/folders/Folder.kt | 2 +- .../java/com/zs/gallery/impl/MainViewModel.kt | 2 +- .../com/zs/gallery/lockscreen/LockScreen.kt | 7 +-- .../zs/gallery/settings/SettingsViewState.kt | 2 +- app/src/main/res/values/strings.xml | 59 +++++++++++-------- gradle/libs.versions.toml | 2 - 12 files changed, 56 insertions(+), 46 deletions(-) diff --git a/.idea/compiler.xml b/.idea/compiler.xml index b589d56..b86273d 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 2f2dd64..3cd5ceb 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -14,8 +14,8 @@ android { applicationId = "com.googol.android.apps.photos" minSdk = 24 targetSdk = 35 - versionCode = 31 - versionName = "0.2.0-dev" + versionCode = 32 + versionName = "0.2.1-dev" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { diff --git a/app/src/main/java/com/zs/gallery/Gallery.kt b/app/src/main/java/com/zs/gallery/Gallery.kt index 7f59ac9..6eb8c8f 100644 --- a/app/src/main/java/com/zs/gallery/Gallery.kt +++ b/app/src/main/java/com/zs/gallery/Gallery.kt @@ -219,8 +219,8 @@ private fun Permission() { // If the permissions are not granted, show the permission screen. com.zs.gallery.common.Placeholder( iconResId = R.raw.lt_permission, - title = stringResource(R.string.permission_screen_title).toString(), - message = textResource(R.string.permission_screen_desc), + title = stringResource(R.string.permission_scr_title).toString(), + message = textResource(R.string.permission_scr_desc), vertical = LocalWindowSize.current.widthRange == Range.Compact ) { OutlinedButton( @@ -322,7 +322,7 @@ private fun NavigationBar( // Timeline NavItem( - label = { Label(text = textResource(R.string.photos)) }, + label = { Label(text = textResource(R.string.timeline)) }, icon = { Icon(imageVector = Icons.Filled.PhotoLibrary, contentDescription = null) }, checked = domain == RouteTimeline.domain, onClick = { facade.launchReviewFlow(); navController.toRoute(RouteTimeline) }, @@ -400,7 +400,8 @@ private fun NavigationBar( if (colors.isLight) colors.background(2.dp) else Color.Gray.copy(0.24f), Color.Transparent, Color.Transparent, - if (colors.isLight) colors.background(2.dp) else Color.Gray.copy(0.24f), + Color.Transparent, + Color.Transparent, ) ), BottomNavShape diff --git a/app/src/main/java/com/zs/gallery/MainActivity.kt b/app/src/main/java/com/zs/gallery/MainActivity.kt index d9dff55..1f2f89f 100644 --- a/app/src/main/java/com/zs/gallery/MainActivity.kt +++ b/app/src/main/java/com/zs/gallery/MainActivity.kt @@ -208,7 +208,7 @@ class MainActivity : ComponentActivity(), SystemFacade, NavController.OnDestinat Log.d(TAG, "preparing to show authentication dialog.") // Build the BiometricPrompt val prompt = BiometricPrompt.Builder(this).apply { - setTitle(getString(R.string.scr_lock_screen_title)) + setTitle(getString(R.string.lock_scr_title)) if (subtitle != null) setSubtitle(subtitle) if (desc != null) setDescription(desc) // Set allowed authenticators for Android R and above diff --git a/app/src/main/java/com/zs/gallery/common/Backdrop.kt b/app/src/main/java/com/zs/gallery/common/Backdrop.kt index 4d7216d..15be257 100644 --- a/app/src/main/java/com/zs/gallery/common/Backdrop.kt +++ b/app/src/main/java/com/zs/gallery/common/Backdrop.kt @@ -78,7 +78,7 @@ private val MistCachedPaint = Paint().apply { * @return A Modifier with the applied mist effect. */ private fun Modifier.mist(containerColor: Color, accent: Color) = - this then drawBehind { + drawBehind { // Determine if the container color is light based on its luminance. val isLight = containerColor.luminance() >= 0.5f diff --git a/app/src/main/java/com/zs/gallery/files/Timeline.kt b/app/src/main/java/com/zs/gallery/files/Timeline.kt index ca1ffa0..a594b58 100644 --- a/app/src/main/java/com/zs/gallery/files/Timeline.kt +++ b/app/src/main/java/com/zs/gallery/files/Timeline.kt @@ -80,6 +80,7 @@ import com.primex.core.findActivity import com.primex.core.plus import com.primex.material2.IconButton import com.primex.material2.Label +import com.primex.material2.appbar.TopAppBarDefaults import com.zs.domain.store.MediaFile import com.zs.foundation.AppTheme import com.zs.foundation.ListHeader @@ -142,7 +143,7 @@ private fun FloatingTopAppBar( ) ), content = { - androidx.compose.material.TopAppBar( + com.primex.material2.appbar.TopAppBar( navigationIcon = { val facade = LocalSystemFacade.current IconButton( @@ -185,8 +186,9 @@ private fun FloatingTopAppBar( onClick = { facade.launch(Settings.TelegramIntent) } ) }, - backgroundColor = Color.Transparent, - elevation = 0.dp, + style = TopAppBarDefaults.topAppBarStyle( + containerColor = Color.Transparent + ), modifier = Modifier .widthIn(max = 550.dp) .windowInsetsPadding(insets) @@ -206,7 +208,6 @@ private fun FloatingTopAppBar( ), FloatingTopBarShape ) - .height(48.dp) .dynamicBackdrop( backdropProvider, HazeStyle.Regular(colors.background), diff --git a/app/src/main/java/com/zs/gallery/folders/Folder.kt b/app/src/main/java/com/zs/gallery/folders/Folder.kt index 6e2d744..56d7763 100644 --- a/app/src/main/java/com/zs/gallery/folders/Folder.kt +++ b/app/src/main/java/com/zs/gallery/folders/Folder.kt @@ -142,7 +142,7 @@ fun Folder( // More Info Label( text = textResource( - id = R.string.folders_formatted_folder_name_sds, value.count, + id = R.string.folders_scr_folder_name_sds, value.count, ctx.formattedFileSize(value.size.toLong()) ), style = AppTheme.typography.caption.copy(fontSize = 10.sp), diff --git a/app/src/main/java/com/zs/gallery/impl/MainViewModel.kt b/app/src/main/java/com/zs/gallery/impl/MainViewModel.kt index fd61024..152668a 100644 --- a/app/src/main/java/com/zs/gallery/impl/MainViewModel.kt +++ b/app/src/main/java/com/zs/gallery/impl/MainViewModel.kt @@ -251,7 +251,7 @@ abstract class MainViewModel( // If the user performs the action, proceed with deletion // Otherwise, return -3 to indicate user cancellation val action = showToast( - message = R.string.msg_files_deletion_confirm, + message = R.string.msg_files_confirm_deletion, action = R.string.delete, icon = Icons.Outlined.NearbyError, accent = Color.Rose, diff --git a/app/src/main/java/com/zs/gallery/lockscreen/LockScreen.kt b/app/src/main/java/com/zs/gallery/lockscreen/LockScreen.kt index 497de23..6ab45d4 100644 --- a/app/src/main/java/com/zs/gallery/lockscreen/LockScreen.kt +++ b/app/src/main/java/com/zs/gallery/lockscreen/LockScreen.kt @@ -21,18 +21,15 @@ package com.zs.gallery.lockscreen import android.annotation.SuppressLint import androidx.activity.compose.BackHandler import androidx.compose.foundation.layout.size -import androidx.compose.foundation.shape.CircleShape import androidx.compose.material.ButtonDefaults import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier -import androidx.compose.ui.graphics.Color import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import com.primex.core.findActivity import com.primex.core.textResource import com.primex.material2.Button -import com.primex.material2.OutlinedButton import com.zs.foundation.AppTheme import com.zs.foundation.LocalWindowSize import com.zs.foundation.Range @@ -54,8 +51,8 @@ fun LockScreen() { com.zs.gallery.common.Placeholder( iconResId = R.raw.lt_app_lock, - title = stringResource(R.string.scr_lock_screen_title), - message = textResource(R.string.src_lock_screen_desc), + title = stringResource(R.string.lock_scr_title), + message = textResource(R.string.lock_scr_desc), vertical = LocalWindowSize.current.widthRange == Range.Compact, ) { Button( diff --git a/app/src/main/java/com/zs/gallery/settings/SettingsViewState.kt b/app/src/main/java/com/zs/gallery/settings/SettingsViewState.kt index 3b105cd..69e1102 100644 --- a/app/src/main/java/com/zs/gallery/settings/SettingsViewState.kt +++ b/app/src/main/java/com/zs/gallery/settings/SettingsViewState.kt @@ -216,7 +216,7 @@ object Settings { val KEY_APP_LOCK_TIME_OUT = intPreferenceKey("${PREFIX}_app_lock_time_out", -1) val KEY_USE_ACCENT_IN_NAV_BAR = - booleanPreferenceKey("use_accent_in_nav_bar", true) + booleanPreferenceKey("use_accent_in_nav_bar", false) val DefaultFontFamily get() = FontFamily.Default diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 443498f..5bb9cd5 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,19 +1,26 @@ - Beta">]> - + - - &appname; - &appname; - Storage Permission + + Gallery + Storage Permission Allow - &appname; requires permission to access your + Gallery requires permission to access your device\'s storage to display images and videos. - \nIf permission is denied: - - \n 1. You won\'t be able to view your images and videos within the app. - \n 2. You\'ll need to manually grant access in your device settings. - - \nOn Android 14 or higher: + \n\nOn Android 14 or higher: \n 1. Please select Allow all in the permission dialog for the app to function correctly. @@ -23,7 +30,8 @@ Folders Loading Oops Empty!! - %1$d Files - %2$s + + %1$d Files - %2$s Size Name Recent @@ -66,7 +74,7 @@ Secure Mode obscures app content in the app preview, protecting user privacy when the app is not in active use. - + %1$sx Last modified Oops, something went wrong while sharing the files. Please try again. @@ -88,7 +96,7 @@ Title Path MetaData - Delete + Delete \nAre you sure you want to delete this? You won\'t be able to get it back @@ -97,16 +105,21 @@ Update ready! Installation can proceed now. Install App Version - Verify Your Identity - Authenticate with Biometrics - Authenticate with your fingerprint or facial recognition to continue. This step is crucial for safeguarding your data. + Verify Your Identity + Authenticate with Biometrics + Authenticate with your fingerprint or facial recognition + to continue. This step is crucial for safeguarding your data. + Enable biometric authentication in settings. - App Lock β - Unlock with biometrics\nWhen enabled, you\'ll need to use the fingerprint, face or other unique identifiers to open &appname;. + App Lockbeta + Unlock with biometrics\nWhen enabled, you\'ll need + to use the fingerprint, face or other unique identifiers to open Gallery. + Favorites updated! New Media Player App! - \n🎶 Check out our new Media Player! Enjoy your favorite tunes and videos effortlessly. Give it a try! 🎥 + \n🎶 Check out our new Media Player! Enjoy your favorite tunes + and videos effortlessly. Give it a try! 🎥 + Get - \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 937e361..d0b9100 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -62,8 +62,6 @@ coil-compose = { module = "io.coil-kt.coil3:coil-compose", version.ref = "coil" coil-svg = {module = "io.coil-kt.coil3:coil-svg", version.ref = "coil"} avif-coder-coil = { module = "com.github.awxkee:avif-coder-coil", version = "2.0.8" } - - [bundles] compose = [ "androidx-activity-compose", From 9b383661bcb2995c7d39e1a1a7378d98423fb7cf Mon Sep 17 00:00:00 2001 From: Zakir Sheikh Date: Wed, 27 Nov 2024 14:49:03 +0530 Subject: [PATCH 2/8] [CHORE] Added dummy translation files for various regions. [FEAT] Added Crowdin as Translation service. --- .idea/CrowdinSettingsPlugin.xml | 9 ++++++++ app/build.gradle.kts | 4 ++-- .../com/zs/gallery/impl/FoldersViewModel.kt | 2 +- app/src/main/res/values-af-rZA/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-ar-rSA/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-ca-rES/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-cs-rCZ/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-da-rDK/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-de-rDE/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-el-rGR/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-es-rES/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-fi-rFI/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-fr-rFR/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-hu-rHU/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-it-rIT/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-iw-rIL/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-ja-rJP/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-ko-rKR/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-nl-rNL/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-no-rNO/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-pl-rPL/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-pt-rBR/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-pt-rPT/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-ro-rRO/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-ru-rRU/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-sr-rSP/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-sv-rSE/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-tr-rTR/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-uk-rUA/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-ur-rPK/strings.xml | 22 +++++++++++++++++++ app/src/main/res/values-vi-rVN/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-zh-rCN/strings.xml | 20 +++++++++++++++++ app/src/main/res/values-zh-rTW/strings.xml | 20 +++++++++++++++++ app/src/main/res/values/strings.xml | 8 +++---- crowdin.yml | 12 +++++++--- 35 files changed, 627 insertions(+), 10 deletions(-) create mode 100644 .idea/CrowdinSettingsPlugin.xml create mode 100644 app/src/main/res/values-af-rZA/strings.xml create mode 100644 app/src/main/res/values-ar-rSA/strings.xml create mode 100644 app/src/main/res/values-ca-rES/strings.xml create mode 100644 app/src/main/res/values-cs-rCZ/strings.xml create mode 100644 app/src/main/res/values-da-rDK/strings.xml create mode 100644 app/src/main/res/values-de-rDE/strings.xml create mode 100644 app/src/main/res/values-el-rGR/strings.xml create mode 100644 app/src/main/res/values-es-rES/strings.xml create mode 100644 app/src/main/res/values-fi-rFI/strings.xml create mode 100644 app/src/main/res/values-fr-rFR/strings.xml create mode 100644 app/src/main/res/values-hu-rHU/strings.xml create mode 100644 app/src/main/res/values-it-rIT/strings.xml create mode 100644 app/src/main/res/values-iw-rIL/strings.xml create mode 100644 app/src/main/res/values-ja-rJP/strings.xml create mode 100644 app/src/main/res/values-ko-rKR/strings.xml create mode 100644 app/src/main/res/values-nl-rNL/strings.xml create mode 100644 app/src/main/res/values-no-rNO/strings.xml create mode 100644 app/src/main/res/values-pl-rPL/strings.xml create mode 100644 app/src/main/res/values-pt-rBR/strings.xml create mode 100644 app/src/main/res/values-pt-rPT/strings.xml create mode 100644 app/src/main/res/values-ro-rRO/strings.xml create mode 100644 app/src/main/res/values-ru-rRU/strings.xml create mode 100644 app/src/main/res/values-sr-rSP/strings.xml create mode 100644 app/src/main/res/values-sv-rSE/strings.xml create mode 100644 app/src/main/res/values-tr-rTR/strings.xml create mode 100644 app/src/main/res/values-uk-rUA/strings.xml create mode 100644 app/src/main/res/values-ur-rPK/strings.xml create mode 100644 app/src/main/res/values-vi-rVN/strings.xml create mode 100644 app/src/main/res/values-zh-rCN/strings.xml create mode 100644 app/src/main/res/values-zh-rTW/strings.xml diff --git a/.idea/CrowdinSettingsPlugin.xml b/.idea/CrowdinSettingsPlugin.xml new file mode 100644 index 0000000..8e520d8 --- /dev/null +++ b/.idea/CrowdinSettingsPlugin.xml @@ -0,0 +1,9 @@ + + + + + \ No newline at end of file diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 3cd5ceb..a23d6e3 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -14,8 +14,8 @@ android { applicationId = "com.googol.android.apps.photos" minSdk = 24 targetSdk = 35 - versionCode = 32 - versionName = "0.2.1-dev" + versionCode = 33 + versionName = "0.2.2-dev" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { diff --git a/app/src/main/java/com/zs/gallery/impl/FoldersViewModel.kt b/app/src/main/java/com/zs/gallery/impl/FoldersViewModel.kt index 4f6977d..f6a659f 100644 --- a/app/src/main/java/com/zs/gallery/impl/FoldersViewModel.kt +++ b/app/src/main/java/com/zs/gallery/impl/FoldersViewModel.kt @@ -87,7 +87,7 @@ class FoldersViewModel( // This might involve logging the exception using Firebase Crashlytics. // Display a toast message to the user, indicating something went wrong and suggesting they report the issue. val action = showToast( - getText(R.string.oops_something_went_wrong_please_report_this_to_developer), + exception.message ?: getText(R.string.msg_unknown_error), getText(R.string.report), Icons.Outlined.NearbyError, Color.Rose, diff --git a/app/src/main/res/values-af-rZA/strings.xml b/app/src/main/res/values-af-rZA/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-af-rZA/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-ar-rSA/strings.xml b/app/src/main/res/values-ar-rSA/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-ar-rSA/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-ca-rES/strings.xml b/app/src/main/res/values-ca-rES/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-ca-rES/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-cs-rCZ/strings.xml b/app/src/main/res/values-cs-rCZ/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-cs-rCZ/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-da-rDK/strings.xml b/app/src/main/res/values-da-rDK/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-da-rDK/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-de-rDE/strings.xml b/app/src/main/res/values-de-rDE/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-de-rDE/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-el-rGR/strings.xml b/app/src/main/res/values-el-rGR/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-el-rGR/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-es-rES/strings.xml b/app/src/main/res/values-es-rES/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-es-rES/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-fi-rFI/strings.xml b/app/src/main/res/values-fi-rFI/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-fi-rFI/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-fr-rFR/strings.xml b/app/src/main/res/values-fr-rFR/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-fr-rFR/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-hu-rHU/strings.xml b/app/src/main/res/values-hu-rHU/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-hu-rHU/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-it-rIT/strings.xml b/app/src/main/res/values-it-rIT/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-it-rIT/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-iw-rIL/strings.xml b/app/src/main/res/values-iw-rIL/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-iw-rIL/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-ja-rJP/strings.xml b/app/src/main/res/values-ja-rJP/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-ja-rJP/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-ko-rKR/strings.xml b/app/src/main/res/values-ko-rKR/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-ko-rKR/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-nl-rNL/strings.xml b/app/src/main/res/values-nl-rNL/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-nl-rNL/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-no-rNO/strings.xml b/app/src/main/res/values-no-rNO/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-no-rNO/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-pl-rPL/strings.xml b/app/src/main/res/values-pl-rPL/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-pl-rPL/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-pt-rPT/strings.xml b/app/src/main/res/values-pt-rPT/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-pt-rPT/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-ro-rRO/strings.xml b/app/src/main/res/values-ro-rRO/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-ro-rRO/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-ru-rRU/strings.xml b/app/src/main/res/values-ru-rRU/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-ru-rRU/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-sr-rSP/strings.xml b/app/src/main/res/values-sr-rSP/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-sr-rSP/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-sv-rSE/strings.xml b/app/src/main/res/values-sv-rSE/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-sv-rSE/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-tr-rTR/strings.xml b/app/src/main/res/values-tr-rTR/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-tr-rTR/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-uk-rUA/strings.xml b/app/src/main/res/values-uk-rUA/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-uk-rUA/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-ur-rPK/strings.xml b/app/src/main/res/values-ur-rPK/strings.xml new file mode 100644 index 0000000..ef897fb --- /dev/null +++ b/app/src/main/res/values-ur-rPK/strings.xml @@ -0,0 +1,22 @@ + + + + اجازت دیں + تصاویر + + + diff --git a/app/src/main/res/values-vi-rVN/strings.xml b/app/src/main/res/values-vi-rVN/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-vi-rVN/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml new file mode 100644 index 0000000..ee6ebe2 --- /dev/null +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 5bb9cd5..d84eb52 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,5 +1,5 @@ - + - Gallery + Gallery Storage Permission Allow Gallery requires permission to access your @@ -61,7 +61,7 @@ Report an issue Get in touch with our support team for assistance or to report issues %1$s\nClick to check for updates. - msg_loading_error + Something went wrong. An unknown error occurred. Report Timeline 123%1$s @@ -111,7 +111,7 @@ to continue. This step is crucial for safeguarding your data. Enable biometric authentication in settings. - App Lockbeta + App Lock Beta Unlock with biometrics\nWhen enabled, you\'ll need to use the fingerprint, face or other unique identifiers to open Gallery. diff --git a/crowdin.yml b/crowdin.yml index b95d0b9..8dce3d2 100644 --- a/crowdin.yml +++ b/crowdin.yml @@ -1,4 +1,10 @@ - +preserve_hierarchy: true files: - - source: /app/src/main/res/values/strings.xml - translation: /app/src/main/res/values/%two_letters_code%/%original_file_name% + - source: "**/values/strings.xml" + translation: "/values-%android_code%/%original_file_name%" #CORRECT + update_strings: true + cleanup_mode: true + import_eq_suggestions: true + auto_approve_imported: true + translate_hidden: true + # This will be converted to 'app/src/main/res/values-%two_letter_code%/%original_file_name%' export pattern for each file \ No newline at end of file From 82553018b25fd1a1356c5aaae9672a709835e115 Mon Sep 17 00:00:00 2001 From: Zakir Sheikh Date: Wed, 27 Nov 2024 14:58:40 +0530 Subject: [PATCH 3/8] [CHORE] Added dummy translation files for various regions. [FEAT] Added Crowdin as Translation service. --- app/src/main/res/values-af-rZA/strings.xml | 2 +- app/src/main/res/values-ar-rSA/strings.xml | 2 +- app/src/main/res/values-ca-rES/strings.xml | 2 +- app/src/main/res/values-cs-rCZ/strings.xml | 2 +- app/src/main/res/values-da-rDK/strings.xml | 2 +- app/src/main/res/values-de-rDE/strings.xml | 2 +- app/src/main/res/values-el-rGR/strings.xml | 2 +- app/src/main/res/values-es-rES/strings.xml | 2 +- app/src/main/res/values-fi-rFI/strings.xml | 2 +- app/src/main/res/values-fr-rFR/strings.xml | 2 +- app/src/main/res/values-hu-rHU/strings.xml | 2 +- app/src/main/res/values-it-rIT/strings.xml | 2 +- app/src/main/res/values-iw-rIL/strings.xml | 2 +- app/src/main/res/values-ja-rJP/strings.xml | 2 +- app/src/main/res/values-ko-rKR/strings.xml | 2 +- app/src/main/res/values-nl-rNL/strings.xml | 2 +- app/src/main/res/values-no-rNO/strings.xml | 2 +- app/src/main/res/values-pl-rPL/strings.xml | 2 +- app/src/main/res/values-pt-rBR/strings.xml | 2 +- app/src/main/res/values-pt-rPT/strings.xml | 2 +- app/src/main/res/values-ro-rRO/strings.xml | 2 +- app/src/main/res/values-ru-rRU/strings.xml | 2 +- app/src/main/res/values-sr-rSP/strings.xml | 2 +- app/src/main/res/values-sv-rSE/strings.xml | 2 +- app/src/main/res/values-tr-rTR/strings.xml | 2 +- app/src/main/res/values-uk-rUA/strings.xml | 2 +- app/src/main/res/values-ur-rPK/strings.xml | 3 ++- app/src/main/res/values-vi-rVN/strings.xml | 2 +- app/src/main/res/values-zh-rCN/strings.xml | 2 +- app/src/main/res/values-zh-rTW/strings.xml | 2 +- 30 files changed, 31 insertions(+), 30 deletions(-) diff --git a/app/src/main/res/values-af-rZA/strings.xml b/app/src/main/res/values-af-rZA/strings.xml index ee6ebe2..68fb05e 100644 --- a/app/src/main/res/values-af-rZA/strings.xml +++ b/app/src/main/res/values-af-rZA/strings.xml @@ -1,5 +1,5 @@ - + + گیلری اجازت دیں تصاویر diff --git a/app/src/main/res/values-vi-rVN/strings.xml b/app/src/main/res/values-vi-rVN/strings.xml index ee6ebe2..68fb05e 100644 --- a/app/src/main/res/values-vi-rVN/strings.xml +++ b/app/src/main/res/values-vi-rVN/strings.xml @@ -1,5 +1,5 @@ - + - -## Download +**This project is still in development and is expected to have bugs. Please report any bugs you find +in +the [Issues](https://github.com/iZakirSheikh/Gallery/issues) section.** [Get it on Google Play](https://github.com/iZakirSheikh/Gallery/releases/latest) -## Introduction - -Meet Gallery, your intelligent, lightweight, and lightning-fast photo and video gallery crafted with -Jetpack Compose. - ### Features - Performance: Gallery's compact size frees up space for your photos, while its efficient memory @@ -51,7 +50,22 @@ Jetpack Compose. - Secure Deletion: Benefit from the added security of a Recycle Bin, providing a temporary holding area for deleted files before they are permanently removed. - +### Preview + + ## Contact @@ -59,6 +73,12 @@ Jetpack Compose. ![Email Badge](https://badgen.net/badge/email/helpline.prime.zs%40gmail.com/blue?icon=mail) [![Twitter](https://img.shields.io/twitter/url/https/twitter.com/cloudposse.svg?style=social&label=Follow%20%40iZakirSheikh)](https://twitter.com/iZakirSheikh) +### Translating + +You can help translate Gallery on [Crowdin](https://crowdin.com/project/gallery-photos-videos). + +![Translation Status](https://badges.awesome-crowdin.com/translation-16583273-718355.png) + ## 🔖 License ``` From 07e52528021b1d0930b37a3ee58b4cc27afcaa7e Mon Sep 17 00:00:00 2001 From: Zakir Sheikh Date: Wed, 27 Nov 2024 21:35:22 +0530 Subject: [PATCH 5/8] [FEAT] Added Spanish language support - Special thanks to @KeXxDumb for contributing the Spanish translations. --- app/build.gradle.kts | 4 +- .../java/com/zs/gallery/files/Timeline.kt | 2 +- app/src/main/res/values-es-rES/strings.xml | 100 ++++++++++++++++++ 3 files changed, 103 insertions(+), 3 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index a23d6e3..41e3ce2 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -14,8 +14,8 @@ android { applicationId = "com.googol.android.apps.photos" minSdk = 24 targetSdk = 35 - versionCode = 33 - versionName = "0.2.2-dev" + versionCode = 34 + versionName = "0.2.3-dev" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { diff --git a/app/src/main/java/com/zs/gallery/files/Timeline.kt b/app/src/main/java/com/zs/gallery/files/Timeline.kt index a594b58..dfb3bf0 100644 --- a/app/src/main/java/com/zs/gallery/files/Timeline.kt +++ b/app/src/main/java/com/zs/gallery/files/Timeline.kt @@ -414,7 +414,7 @@ fun Timeline( columns = GridCells.Adaptive(Settings.STANDARD_TILE_SIZE * multiplier), horizontalArrangement = GridItemsArrangement, verticalArrangement = GridItemsArrangement, - contentPadding = inAppNavInsets + WindowInsets.contentInsets + PaddingValues(end = if (!portrait) CP.large else 0.dp), + contentPadding = inAppNavInsets + WindowInsets.contentInsets + PaddingValues(end = if (!portrait) CP.large else 0.dp) + PaddingValues(horizontal = CP.medium), modifier = Modifier.thenIf(observer != null) { observerBackdrop(observer!!) } ) { // return data or emit state diff --git a/app/src/main/res/values-es-rES/strings.xml b/app/src/main/res/values-es-rES/strings.xml index 68fb05e..7109076 100644 --- a/app/src/main/res/values-es-rES/strings.xml +++ b/app/src/main/res/values-es-rES/strings.xml @@ -15,6 +15,106 @@ 5. The snackbar message should have this structure: Title\n bold + experimental + message. The string resources should follow the above rules strictly --> + Galería + Permiso de Almacenamiento + Galería requiere permiso para acceder al + almacenamiento de tu dispositivo para mostrar imágenes y vídeos. + \n\nEn Android 14 o superior: + + \n 1. Por favor seleccione Permitir todo en el cuadro de diálogo de permisos para que la aplicación funcione correctamente. + + + Fotos + Ajustes + Carpetas + Cargando + Ups está Vacío!! + %1$d Archivos - %2$s + Tamaño + Nombre + Reciente + Oscuro + Claro + Sincronizar con el sistema + General + Apariencia + Tema de la App + Personaliza la apariencia de la aplicación con las opciones de tema Noche, Día o Sistema. + Vista Inmersiva + Oculte la barra de estado y la barra de navegación para disfrutar de una experiencia de pantalla completa sin distracciones. + Bote de basura + Cuando está habilitado, los archivos eliminados se mueven a una carpeta de papelera en lugar de eliminarse permanentemente. + Tamaño de cuadrícula + Controle cuánto espacio ocupa cada elemento en el diseño de cuadrícula. + Galería en vivo + Habilite animaciones y reproducción automática de videos en la galería. + Escala de fuente + Ajusta el tamaño del texto en toda la aplicación. + Barras del Sistema + Controle la transparencia de las barras del sistema para personalizar la apariencia de la aplicación + Comentarios + Sobre Galería + Política de Privacidad + Haga clic aquí para ver la política de privacidad + Informar un problema + Póngase en contacto con nuestro equipo de soporte para obtener ayuda o informar problemas + %1$s\nHaga clic para buscar actualizaciones. + Algo salió mal. Ocurrió un error desconocido. + Informe + Cronología + 123%1$s + Seleccionar Todo + Papelera + Papelera de Reciclaje + Favoritos + Modo Seguro + El modo seguro oculta el contenido de la aplicación en la vista previa de la aplicación, + protegiendo la privacidad del usuario cuando la aplicación no está en uso activo. + + %1$sx + Última modificación + Ups, algo salió mal al compartir los archivos. Por favor, inténtelo de nuevo. + Ups, algo salió mal al eliminar los archivos. Por favor, inténtelo de nuevo. + Ups, algo salió mal al eliminar los archivos. Inténtalo de nuevo. + Basura + Ups, algo salió mal al restaurar los archivos. Por favor, inténtelo de nuevo. + Compartir + Editar + Borrar + Información + Editar En + Usar como + Establecer como fondo de pantalla + Quitar de Favoritos + Detalles + Título + Metadatos + Borrar + \n¿Estás seguro de que deseas eliminarlo? No podrás recuperarlo + + + ¡Ups! Algo salió mal al buscar actualizaciones. + ¡Ya está todo listo! No hay actualizaciones disponibles. + ¡Actualización lista! La instalación puede continuar ahora. + Instalar + Versión de la aplicación + Verifica tu identidad + Autenticarse con biometría + Autenticación con huella dactilar o reconocimiento facial + Para continuar. Este paso es crucial para proteger sus datos. + + Habilite la autenticación biométrica en la configuración. + Bloqueo de aplicación Beta + Desbloqueo con biometría\nCuando esté habilitado, necesitarás + utilizar la huella digital, el rostro u otros identificadores únicos para abrir la Galería. + + ¡Favoritos actualizados! + ¡Nueva aplicación de reproductor multimedia! + \n🎶 Echa un vistazo a nuestro nuevo reproductor multimedia! Disfruta de tus canciones favoritas + y vídeos sin esfuerzo. ¡Pruébalo! 🎥 + + + Conseguir From f0d18dabb883fff80df300484f784ea9791928fb Mon Sep 17 00:00:00 2001 From: Zakir Sheikh Date: Wed, 27 Nov 2024 22:14:13 +0530 Subject: [PATCH 6/8] [FIX] Added missing strings in Spanish. [UPDATE Updated README.md with more info regarding contributors etc. --- README.md | 16 +++++++++++++++- app/build.gradle.kts | 2 +- .../java/com/zs/gallery/settings/Settings.kt | 4 ++-- app/src/main/res/values-es-rES/strings.xml | 6 ++++++ app/src/main/res/values/strings.xml | 2 ++ 5 files changed, 26 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 68fcbd7..52699f4 100644 --- a/README.md +++ b/README.md @@ -79,6 +79,20 @@ You can help translate Gallery on [Crowdin](https://crowdin.com/project/gallery- ![Translation Status](https://badges.awesome-crowdin.com/translation-16583273-718355.png) +## Credits + +#### Special Thanks + +- Spanish by [@KeXxDumb](https://github.com/KeXxDumb) +- Thanks to **Crowdin** for providing free hosting for the project. + +### Open Source Projects + +- [Gallery](https://github.com/IacobIonut01/Gallery) +- [Simple-Gallery](https://github.com/SimpleMobileTools/Simple-Gallery) +- [Fossify Gallery](https://github.com/FossifyOrg/Gallery) +- ... + ## 🔖 License ``` @@ -99,4 +113,4 @@ You can help translate Gallery on [Crowdin](https://crowdin.com/project/gallery- See the License for the specific language governing permissions and limitations under the License. -``` +``` \ No newline at end of file diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 41e3ce2..fbf8fb4 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -14,7 +14,7 @@ android { applicationId = "com.googol.android.apps.photos" minSdk = 24 targetSdk = 35 - versionCode = 34 + versionCode = 35 versionName = "0.2.3-dev" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" diff --git a/app/src/main/java/com/zs/gallery/settings/Settings.kt b/app/src/main/java/com/zs/gallery/settings/Settings.kt index c14c82c..9a46903 100644 --- a/app/src/main/java/com/zs/gallery/settings/Settings.kt +++ b/app/src/main/java/com/zs/gallery/settings/Settings.kt @@ -274,12 +274,12 @@ private inline fun Appearance( val useAccent by preference(Settings.KEY_USE_ACCENT_IN_NAV_BAR) SwitchPreference( - "Color NavBar", + stringResource(R.string.pref_color_nav_bar), checked = useAccent, onCheckedChange = { viewState.set(Settings.KEY_USE_ACCENT_IN_NAV_BAR, it) }, modifier = Modifier .background(AppTheme.colors.tileBackgroundColor, BottomTileShape), - summery = "Use the accent color in the navigation bar." + summery = stringResource(R.string.pref_color_nav_bar_summery) ) } diff --git a/app/src/main/res/values-es-rES/strings.xml b/app/src/main/res/values-es-rES/strings.xml index 7109076..b63c2bc 100644 --- a/app/src/main/res/values-es-rES/strings.xml +++ b/app/src/main/res/values-es-rES/strings.xml @@ -17,6 +17,7 @@ --> Galería Permiso de Almacenamiento + Permitir Galería requiere permiso para acceder al almacenamiento de tu dispositivo para mostrar imágenes y vídeos. \n\nEn Android 14 o superior: @@ -64,6 +65,7 @@ Informe Cronología 123%1$s + %1$d Seleccionados Seleccionar Todo Papelera Papelera de Reciclaje @@ -87,9 +89,11 @@ Editar En Usar como Establecer como fondo de pantalla + Favorito Quitar de Favoritos Detalles Título + Ruta Metadatos Borrar \n¿Estás seguro de que deseas eliminarlo? No podrás recuperarlo @@ -117,4 +121,6 @@ Conseguir + Barra de Navegación de Color + Utilice el color de acento en la barra de navegación. diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index d84eb52..2aaa725 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -122,4 +122,6 @@ Get + Color NavBar + Use the accent color in the navigation bar. \ No newline at end of file From aed720d42df597231ffd333de5b3d984c137503c Mon Sep 17 00:00:00 2001 From: Zakir Sheikh Date: Thu, 28 Nov 2024 13:01:02 +0530 Subject: [PATCH 7/8] [CHORE] Replaced all hardcode strings with string resources. - Updated koltin to 2.1.0, media3 to 1.5.1 and coil to 3.0.4 --- .idea/CrowdinSettingsPlugin.xml | 1 + .idea/kotlinc.xml | 6 ++--- .../main/java/com/zs/gallery/MainActivity.kt | 7 +++--- app/src/main/java/com/zs/gallery/bin/Trash.kt | 5 ++-- .../com/zs/gallery/impl/AlbumViewModel.kt | 2 +- .../com/zs/gallery/impl/FolderViewModel.kt | 3 ++- .../com/zs/gallery/impl/TrashViewModel.kt | 9 +++---- .../com/zs/gallery/impl/ViewerViewModel.kt | 4 ++-- .../java/com/zs/gallery/settings/Settings.kt | 24 ++++++++++--------- .../main/java/com/zs/gallery/viewer/Viewer.kt | 3 +++ app/src/main/res/values/strings.xml | 19 +++++++++++++++ gradle/libs.versions.toml | 8 +++---- 12 files changed, 59 insertions(+), 32 deletions(-) diff --git a/.idea/CrowdinSettingsPlugin.xml b/.idea/CrowdinSettingsPlugin.xml index 8e520d8..7e16ade 100644 --- a/.idea/CrowdinSettingsPlugin.xml +++ b/.idea/CrowdinSettingsPlugin.xml @@ -5,5 +5,6 @@ \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index d0b9100..41ec3bd 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,11 +1,11 @@ [versions] agp = "8.7.2" -kotlin = "2.0.21" +kotlin = "2.1.0" compose = "1.8.0-alpha06" -media3 = "1.4.1" +media3 = "1.5.0" toolkit = "2.1.0" material_icons = "1.7.5" -coil = "3.0.2" +coil = "3.0.4" [plugins] android-application = { id = "com.android.application", version.ref = "agp" } @@ -53,7 +53,7 @@ androidx-activity-compose = { group = "androidx.activity", name = "activity-comp androidx-core-splashscreen = { module = "androidx.core:core-splashscreen", version = "1.0.1" } androidx-startup-runtime = { module = "androidx.startup:startup-runtime", version = "1.2.0" } lottie-compose = { module = "com.airbnb.android:lottie-compose", version = "6.6.0" } -saket-zoomable = { module = "me.saket.telephoto:zoomable", version = "0.13.0" } +saket-zoomable = { module = "me.saket.telephoto:zoomable", version = "0.14.0" } play-app-update-ktx = { module = "com.google.android.play:app-update-ktx", version = "2.1.0" } play-app-review-ktx = { module = "com.google.android.play:review-ktx", version = "2.0.1" } From 0355d426e149654ced3feda9a5e814537751b4af Mon Sep 17 00:00:00 2001 From: Zakir Sheikh Date: Fri, 29 Nov 2024 23:32:13 +0530 Subject: [PATCH 8/8] [CHORE] Updated Spanish translation - Special thanks to @KeXxDumb for contributing the Spanish translations. --- app/build.gradle.kts | 2 +- app/src/main/res/values-es-rES/strings.xml | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index fbf8fb4..f0ff47b 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -15,7 +15,7 @@ android { minSdk = 24 targetSdk = 35 versionCode = 35 - versionName = "0.2.3-dev" + versionName = "0.2.4-dev" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { diff --git a/app/src/main/res/values-es-rES/strings.xml b/app/src/main/res/values-es-rES/strings.xml index b63c2bc..5a94a1b 100644 --- a/app/src/main/res/values-es-rES/strings.xml +++ b/app/src/main/res/values-es-rES/strings.xml @@ -123,4 +123,22 @@ Conseguir Barra de Navegación de Color Utilice el color de acento en la barra de navegación. + Descartar + ¡Autenticación Fallida! Inténtelo de nuevo o utilice un método alternativo. + Error de autenticación: %1$s + Restaurar + Papelera Vacía + %1$s Archivos + Ups! No se detectó ninguna aplicación de fondo de pantalla. Instale uno para continuar. + Establecer como + Hoy + Queda 1 día + %1$s Días restantes + Confirmar Datos Biométricos + + Bloqueo de Aplicación Deshabilitado + Bloquear Inmediatamente + Bloquear después de 1 minuto + Bloquear después de 30 minutos +