From 8f586780a184e5e7001db89751dd78d2110975bf Mon Sep 17 00:00:00 2001 From: Vitor Pamplona Date: Fri, 24 Nov 2023 12:27:52 -0500 Subject: [PATCH] Slightly improving performance --- app/src/main/java/com/vitorpamplona/amethyst/model/Note.kt | 2 +- .../com/vitorpamplona/amethyst/ui/note/UsernameDisplay.kt | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/vitorpamplona/amethyst/model/Note.kt b/app/src/main/java/com/vitorpamplona/amethyst/model/Note.kt index 1d15bf76f..02b5764d1 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/model/Note.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/model/Note.kt @@ -846,7 +846,7 @@ class NoteLiveSet(u: Note) { val authorChanges = innerMetadata.map { it.note.author - } + }.distinctUntilChanged() val hasEvent = innerMetadata.map { it.note.event != null diff --git a/app/src/main/java/com/vitorpamplona/amethyst/ui/note/UsernameDisplay.kt b/app/src/main/java/com/vitorpamplona/amethyst/ui/note/UsernameDisplay.kt index 82ee13575..e345b90dc 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/ui/note/UsernameDisplay.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/ui/note/UsernameDisplay.kt @@ -34,7 +34,7 @@ import com.vitorpamplona.quartz.events.ImmutableListOfLists fun NoteUsernameDisplay(baseNote: Note, weight: Modifier = Modifier, showPlayButton: Boolean = true, textColor: Color = Color.Unspecified) { val authorState by baseNote.live().authorChanges.observeAsState(baseNote.author) - Crossfade(targetState = authorState, modifier = weight) { + Crossfade(targetState = authorState, modifier = weight, label = "NoteUsernameDisplay") { it?.let { UsernameDisplay(it, weight, showPlayButton, textColor = textColor) } @@ -51,7 +51,7 @@ fun UsernameDisplay(baseUser: User, weight: Modifier = Modifier, showPlayButton: val userMetadata by baseUser.live().userMetadataInfo.observeAsState(baseUser.info) - Crossfade(targetState = userMetadata, modifier = weight) { + Crossfade(targetState = userMetadata, modifier = weight, label = "UsernameDisplay") { if (it != null) { UserNameDisplay(it.bestUsername(), it.bestDisplayName(), npubDisplay, it.tags, weight, showPlayButton, fontWeight, textColor) } else {