Uses derivedOf to protect from updates with the same content

This commit is contained in:
Vitor Pamplona
2023-06-22 12:03:52 -04:00
parent 13710dde06
commit 32b2b1ace8
@@ -989,20 +989,26 @@ private fun DisplayUserFromTag(
addedChars: String, addedChars: String,
nav: (String) -> Unit nav: (String) -> Unit
) { ) {
val innerUserState by baseUser.live().metadata.observeAsState() val route = remember {
val displayName = remember(innerUserState) {
innerUserState?.user?.toBestDisplayName() ?: ""
}
val route = remember(innerUserState) {
"User/${baseUser.pubkeyHex}" "User/${baseUser.pubkeyHex}"
} }
val userTags = remember(innerUserState) { val suffix = remember { "$addedChars " }
innerUserState?.user?.info?.latestMetadata?.tags?.toImmutableListOfLists()
val innerUserState by baseUser.live().metadata.observeAsState()
val displayName by remember(innerUserState) {
derivedStateOf {
innerUserState?.user?.toBestDisplayName() ?: ""
}
}
val userTags by remember(innerUserState) {
derivedStateOf {
innerUserState?.user?.info?.latestMetadata?.tags?.toImmutableListOfLists()
}
} }
CreateClickableTextWithEmoji( CreateClickableTextWithEmoji(
clickablePart = displayName, clickablePart = displayName,
suffix = remember { "$addedChars " }, suffix = suffix,
maxLines = 1, maxLines = 1,
route = route, route = route,
nav = nav, nav = nav,