diff --git a/app/src/main/kotlin/com/wire/android/model/UserAvatarData.kt b/app/src/main/kotlin/com/wire/android/model/UserAvatarData.kt index 41697e59edf..5d49d78d5d3 100644 --- a/app/src/main/kotlin/com/wire/android/model/UserAvatarData.kt +++ b/app/src/main/kotlin/com/wire/android/model/UserAvatarData.kt @@ -46,7 +46,7 @@ data class NameBasedAvatar(val fullName: String?, val accentColor: Int) { val initials: String get() { if (fullName.isNullOrEmpty()) return String.EMPTY - val names = fullName.split(" ").map { it.uppercase() } + val names = fullName.split(EMPTY_REGEX).filter { it.isNotEmpty() }.map { it.uppercase() } return when { names.size > 1 -> { val initials = names.map { it.first() } @@ -57,3 +57,5 @@ data class NameBasedAvatar(val fullName: String?, val accentColor: Int) { } } } + +val EMPTY_REGEX = "\\s".toRegex() diff --git a/app/src/main/kotlin/com/wire/android/ui/common/UserProfileAvatar.kt b/app/src/main/kotlin/com/wire/android/ui/common/UserProfileAvatar.kt index def0dbe2d61..ae9c9587d6f 100644 --- a/app/src/main/kotlin/com/wire/android/ui/common/UserProfileAvatar.kt +++ b/app/src/main/kotlin/com/wire/android/ui/common/UserProfileAvatar.kt @@ -45,6 +45,8 @@ import androidx.compose.ui.platform.LocalInspectionMode import androidx.compose.ui.platform.testTag import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource +import androidx.compose.ui.semantics.contentDescription +import androidx.compose.ui.semantics.semantics import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.Dp @@ -191,8 +193,10 @@ private fun DefaultInitialsAvatar( avatarBorderSize: Dp, size: Dp = MaterialTheme.wireDimensions.avatarDefaultSize ) { + val contentDescription = stringResource(R.string.content_description_user_avatar) Box( modifier = Modifier + .semantics { this.contentDescription = contentDescription } .withAvatarSize(size, avatarBorderSize, dimensions().avatarStatusBorderSize, type) .let { withAvatarBorders(type, avatarBorderSize, it) } .clip(CircleShape)