This commit is contained in:
alansley 2024-08-28 16:31:11 +10:00
parent 114066ad5f
commit ce8efd7def
2 changed files with 9 additions and 7 deletions

View File

@ -108,10 +108,10 @@ class ConversationActionBarView @JvmOverloads constructor(
val durationAbbreviated = ExpirationUtil.getExpirationAbbreviatedDisplayValue(config.expiryMode.expirySeconds)
// ..then substitute into the string..
val subtitleTxt = context.getSubbedString(R.string.disappearingMessagesDisappear,
val subtitleTxt = context.getString(R.string.disappearingMessagesDisappear,
DISAPPEARING_MESSAGES_TYPE_KEY to dmTypeString,
TIME_KEY to durationAbbreviated
).toString()
)
// .. and apply to the subtitle.
settings += ConversationSetting(
@ -128,7 +128,7 @@ class ConversationActionBarView @JvmOverloads constructor(
?.let {
val mutedDuration = (it - System.currentTimeMillis()).milliseconds
val durationString = LocalisedTimeUtil.getDurationWithSingleLargestTimeUnit(context, mutedDuration)
context.getSubbedString(R.string.notificationsMuteFor, TIME_LARGE_KEY to durationString).toString()
context.getSubbedString(R.string.notificationsMuteFor, TIME_LARGE_KEY to durationString)
}
?: context.getString(R.string.notificationsMuted),
ConversationSettingType.NOTIFICATION,

View File

@ -19,14 +19,16 @@ fun Context.createThemedComposeView(content: @Composable () -> Unit): ComposeVie
setThemedContent(content)
}
fun Context.getSubbedString(stringId: Int, vararg substitutionPairs: Pair<String, String>): CharSequence {
fun Context.getSubbedCharSequence(stringId: Int, vararg substitutionPairs: Pair<String, String>): CharSequence {
val phrase = Phrase.from(this, stringId)
for ((key, value) in substitutionPairs) {
phrase.put(key, value)
}
for ((key, value) in substitutionPairs) { phrase.put(key, value) }
return phrase.format()
}
fun Context.getSubbedString(stringId: Int, vararg substitutionPairs: Pair<String, String>): String {
return getSubbedCharSequence(stringId, *substitutionPairs).toString()
}
fun ComposeView.setThemedContent(content: @Composable () -> Unit) = setContent {
SessionMaterialTheme {
content()