diff --git a/app/src/main/java/com/vitorpamplona/amethyst/service/NostrSingleUserDataSource.kt b/app/src/main/java/com/vitorpamplona/amethyst/service/NostrSingleUserDataSource.kt index 6f5ac4946..e1a768992 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/service/NostrSingleUserDataSource.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/service/NostrSingleUserDataSource.kt @@ -31,7 +31,7 @@ import com.vitorpamplona.quartz.events.ReportEvent import com.vitorpamplona.quartz.events.StatusEvent object NostrSingleUserDataSource : NostrDataSource("SingleUserFeed") { - var usersToWatch = setOf() + private var usersToWatch = setOf() fun createUserMetadataFilter(): List? { if (usersToWatch.isEmpty()) return null @@ -83,8 +83,7 @@ object NostrSingleUserDataSource : NostrDataSource("SingleUserFeed") { ), ), ) - } - .flatten() + }.flatten() } val userChannel = @@ -110,8 +109,7 @@ object NostrSingleUserDataSource : NostrDataSource("SingleUserFeed") { listOfNotNull( createUserMetadataFilter(), createUserMetadataStatusReportFilter(), - ) - .flatten() + ).flatten() .ifEmpty { null } } diff --git a/app/src/main/java/com/vitorpamplona/amethyst/ui/navigation/AppBottomBar.kt b/app/src/main/java/com/vitorpamplona/amethyst/ui/navigation/AppBottomBar.kt index e3dd7225f..4478dd9a6 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/ui/navigation/AppBottomBar.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/ui/navigation/AppBottomBar.kt @@ -35,7 +35,6 @@ import androidx.compose.material3.NavigationBarItem import androidx.compose.runtime.Composable import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.State -import androidx.compose.runtime.derivedStateOf import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember @@ -146,12 +145,16 @@ private fun RowScope.HasNewItemsIcon( navEntryState: State, nav: (Route, Boolean) -> Unit, ) { - val selected by - remember(navEntryState.value) { - derivedStateOf { navEntryState.value?.destination?.route?.substringBefore("?") == route.base } - } + val selected = + ( + navEntryState.value + ?.destination + ?.route + ?.indexOf(route.base) ?: -1 + ) > -1 NavigationBarItem( + alwaysShowLabel = false, icon = { NotifiableIcon( selected, diff --git a/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/ThreadFeedView.kt b/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/ThreadFeedView.kt index 8542945a7..6980f89ed 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/ThreadFeedView.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/ThreadFeedView.kt @@ -47,7 +47,6 @@ import androidx.compose.material3.TextFieldDefaults import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.MutableState -import androidx.compose.runtime.derivedStateOf import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember @@ -405,11 +404,9 @@ private fun FullBleedNoteCompose( Row(verticalAlignment = Alignment.CenterVertically) { NoteUsernameDisplay(baseNote, Modifier.weight(1f)) - val isCommunityPost by + val isCommunityPost = remember(baseNote) { - derivedStateOf { - baseNote.event?.isTaggedAddressableKind(CommunityDefinitionEvent.KIND) == true - } + baseNote.event?.isTaggedAddressableKind(CommunityDefinitionEvent.KIND) == true } if (isCommunityPost) { diff --git a/quartz/src/main/java/com/vitorpamplona/quartz/events/Event.kt b/quartz/src/main/java/com/vitorpamplona/quartz/events/Event.kt index 6228b7461..5dcd4710a 100644 --- a/quartz/src/main/java/com/vitorpamplona/quartz/events/Event.kt +++ b/quartz/src/main/java/com/vitorpamplona/quartz/events/Event.kt @@ -143,7 +143,7 @@ open class Event( override fun isSensitive() = tags.any { - (it.size > 0 && it[0].equals("content-warning")) || + (it.size > 0 && it[0] == "content-warning") || (it.size > 1 && it[0] == "t" && (it[1].equals("nsfw", true) || it[1].equals("nude", true))) }