diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/StringResourceCache.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/StringResourceCache.kt index d903cd903..f4205b7f3 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/StringResourceCache.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/StringResourceCache.kt @@ -49,7 +49,19 @@ fun stringRes(id: Int): String = resourceCache.get(id) ?: stringResource(id).als @Composable fun stringRes( id: Int, - vararg args: Any, + vararg args: String, +): String = + String + .format( + LocalConfiguration.current.locales.get(0), + resourceCache.get(id) ?: stringResource(id).also { resourceCache.put(id, it) }, + *args, + ) + +@Composable +fun stringRes( + id: Int, + vararg args: Int?, ): String = String .format( @@ -66,7 +78,22 @@ fun stringRes( fun stringRes( ctx: Context, id: Int, - vararg args: Any?, + vararg args: String?, +): String { + val res = ctx.resources + + return String + .format( + res.configuration.locales.get(0), + resourceCache.get(id) ?: res.getString(id).also { resourceCache.put(id, it) }, + *args, + ) +} + +fun stringRes( + ctx: Context, + id: Int, + vararg args: Int?, ): String { val res = ctx.resources diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/note/UpdateZapAmountDialog.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/note/UpdateZapAmountDialog.kt index f2bbb3bae..2e94d5043 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/note/UpdateZapAmountDialog.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/note/UpdateZapAmountDialog.kt @@ -685,7 +685,7 @@ fun authenticate( stringRes( context, R.string.biometric_authentication_failed_explainer_with_error, - errString, + errString.toString(), ), ) }