From c45bb216a3090b3665b0aaf7c28ed1116661083d Mon Sep 17 00:00:00 2001 From: Kgothatso Ngako Date: Wed, 1 Apr 2026 00:03:47 +0200 Subject: [PATCH] Navigate to the things that need to be navigated to --- .../aux/compose/ui/composable/FeedScreen.kt | 25 +++++++++++++------ .../ui/composable/navigation/AuxNavHost.kt | 9 +++++-- 2 files changed, 25 insertions(+), 9 deletions(-) diff --git a/composeApp/src/commonMain/kotlin/ac/aux/compose/ui/composable/FeedScreen.kt b/composeApp/src/commonMain/kotlin/ac/aux/compose/ui/composable/FeedScreen.kt index a19ee6b6..5138eeed 100644 --- a/composeApp/src/commonMain/kotlin/ac/aux/compose/ui/composable/FeedScreen.kt +++ b/composeApp/src/commonMain/kotlin/ac/aux/compose/ui/composable/FeedScreen.kt @@ -21,6 +21,7 @@ import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.ArrowDropDown import androidx.compose.material.icons.filled.Create import androidx.compose.material.icons.filled.Person +import androidx.compose.material.icons.filled.Search import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.ExtendedFloatingActionButton import androidx.compose.material3.FilterChip @@ -31,6 +32,7 @@ import androidx.compose.material3.MediumTopAppBar import androidx.compose.material3.Scaffold import androidx.compose.material3.Surface import androidx.compose.material3.Text +import androidx.compose.material3.TopAppBar import androidx.compose.material3.TopAppBarDefaults import androidx.compose.material3.rememberTopAppBarState import androidx.compose.runtime.Composable @@ -49,6 +51,7 @@ fun FeedScreen( initialFeedListUIState: FeedListUIState, onNavigateToEvent: (HexKey) -> Unit, onNavigateToWriteNewNote: () -> Unit, + onNavigateToSearch: () -> Unit, nostrRepository: NostrRepository, ) { val feedListViewModel: FeedListViewModel = viewModel( @@ -58,14 +61,10 @@ fun FeedScreen( ), ) - val scrollBehavior = TopAppBarDefaults.enterAlwaysScrollBehavior(rememberTopAppBarState()) - Scaffold( - modifier = Modifier.nestedScroll( - scrollBehavior.nestedScrollConnection - ), + modifier = Modifier, topBar = { - MediumTopAppBar( + TopAppBar( colors = TopAppBarDefaults.topAppBarColors( containerColor = MaterialTheme.colorScheme.primaryContainer, titleContentColor = MaterialTheme.colorScheme.primary @@ -87,7 +86,18 @@ fun FeedScreen( ) } }, - scrollBehavior = scrollBehavior + actions = { + IconButton( + onClick = { + onNavigateToSearch.invoke() + } + ) { + Icon( + Icons.Default.Search, + contentDescription = "Search" + ) + } + } ) }, @@ -211,6 +221,7 @@ private fun FeedScreenPreview() { initialFeedListUIState = FeedListUIState.Loaded(emptyList()), onNavigateToEvent = {}, onNavigateToWriteNewNote = {}, + onNavigateToSearch = {}, nostrRepository = NostrRepository.NO_OP_NOSTR_REPOSITORY ) } diff --git a/composeApp/src/commonMain/kotlin/ac/aux/compose/ui/composable/navigation/AuxNavHost.kt b/composeApp/src/commonMain/kotlin/ac/aux/compose/ui/composable/navigation/AuxNavHost.kt index 8f50d911..ec66baec 100644 --- a/composeApp/src/commonMain/kotlin/ac/aux/compose/ui/composable/navigation/AuxNavHost.kt +++ b/composeApp/src/commonMain/kotlin/ac/aux/compose/ui/composable/navigation/AuxNavHost.kt @@ -300,8 +300,8 @@ fun AuxNavHost( initialFeedListUIState = FeedListUIState.Loading, onNavigateToEvent = { nostrEventId -> navController.navigate( - route = ImplementationPendingRoute( - nostrEventId + route = NostrEventDetailRoute( + nostrEventId = nostrEventId ) ) }, @@ -310,6 +310,11 @@ fun AuxNavHost( route = WriteNewNoteRoute() ) }, + onNavigateToSearch = { + navController.navigate( + route = SearchRoute + ) + }, nostrRepository = nostrRepository ) }