diff --git a/features/deactivation/impl/src/main/kotlin/io/element/android/features/logout/impl/AccountDeactivationView.kt b/features/deactivation/impl/src/main/kotlin/io/element/android/features/logout/impl/AccountDeactivationView.kt
index 596bbb8412..ec397393bb 100644
--- a/features/deactivation/impl/src/main/kotlin/io/element/android/features/logout/impl/AccountDeactivationView.kt
+++ b/features/deactivation/impl/src/main/kotlin/io/element/android/features/logout/impl/AccountDeactivationView.kt
@@ -54,6 +54,7 @@ import io.element.android.libraries.designsystem.components.form.textFieldState
import io.element.android.libraries.designsystem.components.list.SwitchListItem
import io.element.android.libraries.designsystem.preview.ElementPreview
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
+import io.element.android.libraries.designsystem.text.buildAnnotatedStringWithStyledPart
import io.element.android.libraries.designsystem.theme.aliasScreenTitle
import io.element.android.libraries.designsystem.theme.components.Button
import io.element.android.libraries.designsystem.theme.components.Icon
@@ -168,14 +169,26 @@ private fun Content(
verticalArrangement = Arrangement.spacedBy(16.dp),
) {
Text(
- text = stringResource(R.string.screen_deactivate_account_description),
+ text = buildAnnotatedStringWithStyledPart(
+ R.string.screen_deactivate_account_description,
+ R.string.screen_deactivate_account_description_bold_part,
+ color = ElementTheme.colors.textSecondary,
+ bold = true,
+ underline = false,
+ ),
style = ElementTheme.typography.fontBodyMdRegular,
color = ElementTheme.colors.textSecondary,
)
InfoListOrganism(
items = persistentListOf(
InfoListItem(
- message = stringResource(R.string.screen_deactivate_account_list_item_1),
+ message = buildAnnotatedStringWithStyledPart(
+ R.string.screen_deactivate_account_list_item_1,
+ R.string.screen_deactivate_account_list_item_1_bold_part,
+ color = ElementTheme.colors.textSecondary,
+ bold = true,
+ underline = false,
+ ),
iconComposable = {
Icon(
modifier = Modifier.size(20.dp),
diff --git a/features/deactivation/impl/src/main/res/values/localazy.xml b/features/deactivation/impl/src/main/res/values/localazy.xml
index 5088a41c61..4a648996be 100644
--- a/features/deactivation/impl/src/main/res/values/localazy.xml
+++ b/features/deactivation/impl/src/main/res/values/localazy.xml
@@ -3,8 +3,10 @@
"Please confirm that you want to deactivate your account. This action cannot be undone."
"Delete all my messages"
"Warning: Future users may see incomplete conversations."
- "Deactivating your account is irreversible, it will:"
- "Permanently disable your account (you can\'t log back in, and your ID can\'t be reused)."
+ "Deactivating your account is %1$s, it will:"
+ "irreversible"
+ "%1$s your account (you can\'t log back in, and your ID can\'t be reused)."
+ "Permanently disable"
"Remove you from all chat rooms."
"Delete your account information from our identity server."
"Your messages will still be visible to registered users but won’t be available to new or unregistered users if you choose to delete them."
diff --git a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/organisms/InfoListOrganism.kt b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/organisms/InfoListOrganism.kt
index dedcd75af0..f3ff74909c 100644
--- a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/organisms/InfoListOrganism.kt
+++ b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/organisms/InfoListOrganism.kt
@@ -17,6 +17,7 @@ import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.vector.ImageVector
+import androidx.compose.ui.text.AnnotatedString
import androidx.compose.ui.text.TextStyle
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.dp
@@ -54,11 +55,19 @@ fun InfoListOrganism(
}
InfoListItemMolecule(
message = {
- Text(
- text = item.message,
- style = textStyle,
- color = textColor,
- )
+ if (item.message is AnnotatedString) {
+ Text(
+ text = item.message,
+ style = textStyle,
+ color = textColor,
+ )
+ } else {
+ Text(
+ text = item.message.toString(),
+ style = textStyle,
+ color = textColor,
+ )
+ }
},
icon = {
if (item.iconId != null) {
@@ -87,7 +96,7 @@ fun InfoListOrganism(
}
data class InfoListItem(
- val message: String,
+ val message: CharSequence,
@DrawableRes val iconId: Int? = null,
val iconVector: ImageVector? = null,
val iconComposable: @Composable () -> Unit = {},