@@ -3,6 +3,7 @@ package com.parseable.android.ui.screens.streams
33import androidx.compose.foundation.layout.*
44import androidx.compose.foundation.lazy.LazyColumn
55import androidx.compose.foundation.lazy.items
6+import androidx.compose.foundation.lazy.rememberLazyListState
67import androidx.compose.material.icons.Icons
78import androidx.compose.material.icons.automirrored.filled.Logout
89import androidx.compose.material.icons.filled.*
@@ -36,6 +37,15 @@ fun StreamsScreen(
3637 var searchQuery by remember { mutableStateOf("") }
3738 val snackbarHostState = remember { SnackbarHostState() }
3839
40+ val listState = rememberLazyListState()
41+
42+ // Scroll to top when a refresh completes (isLoading transitions to false)
43+ LaunchedEffect(state.isLoading) {
44+ if (!state.isLoading) {
45+ listState.scrollToItem(0)
46+ }
47+ }
48+
3949 val filteredStreams = remember(state.streams, searchQuery, state.favoriteNames) {
4050 val favorites = state.favoriteNames
4151 val filtered = if (searchQuery.isBlank()) {
@@ -169,6 +179,7 @@ fun StreamsScreen(
169179 )
170180 }
171181 LazyColumn(
182+ state = listState,
172183 contentPadding = PaddingValues(horizontal = 16.dp, vertical = 8.dp),
173184 verticalArrangement = Arrangement.spacedBy(8.dp),
174185 modifier = Modifier.weight(1f),