fix(android): album sort — scroll to top on change, remove Künstler, default Neueste
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
6be7981b8a
commit
dd484df636
2 files changed
+6
-7
No files matched your search
@@ -7,6 +7,7 @@ import androidx.compose.foundation.lazy.LazyColumn
|
||||
import androidx.compose.foundation.lazy.grid.GridCells
|
||||
import androidx.compose.foundation.lazy.grid.LazyVerticalGrid
|
||||
import androidx.compose.foundation.lazy.grid.items
|
||||
import androidx.compose.foundation.lazy.grid.rememberLazyGridState
|
||||
import androidx.compose.foundation.lazy.items
|
||||
import androidx.compose.foundation.shape.CircleShape
|
||||
import androidx.compose.foundation.shape.RoundedCornerShape
|
||||
@@ -100,7 +101,6 @@ fun LibraryScreen(
|
||||
AlbumSort.NEWEST -> "Neueste"
|
||||
AlbumSort.OLDEST -> "Älteste"
|
||||
AlbumSort.AZ -> "A-Z"
|
||||
AlbumSort.ARTIST -> "Künstler"
|
||||
}, fontSize = 12.sp)
|
||||
},
|
||||
colors = FilterChipDefaults.filterChipColors(
|
||||
@@ -122,13 +122,12 @@ fun LibraryScreen(
|
||||
.thenBy { it.name.lowercase() }
|
||||
)
|
||||
AlbumSort.AZ -> state.albums.sortedBy { it.name.lowercase() }
|
||||
AlbumSort.ARTIST -> state.albums.sortedWith(
|
||||
compareBy<com.novasonic.app.api.model.Album> { it.artist?.lowercase() ?: "" }
|
||||
.thenBy { it.name.lowercase() }
|
||||
)
|
||||
}
|
||||
}
|
||||
val albumGridState = rememberLazyGridState()
|
||||
LaunchedEffect(state.albumSort) { albumGridState.scrollToItem(0) }
|
||||
LazyVerticalGrid(
|
||||
state = albumGridState,
|
||||
columns = GridCells.Adaptive(minSize = 150.dp),
|
||||
contentPadding = PaddingValues(start = 16.dp, end = 16.dp, bottom = 16.dp),
|
||||
horizontalArrangement = Arrangement.spacedBy(12.dp),
|
||||
|
||||
@@ -12,12 +12,12 @@ import kotlinx.coroutines.flow.StateFlow
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
enum class LibraryTab { PLAYLISTS, ALBUMS, ARTISTS }
|
||||
enum class AlbumSort { NEWEST, OLDEST, AZ, ARTIST }
|
||||
enum class AlbumSort { NEWEST, OLDEST, AZ }
|
||||
|
||||
data class LibraryUiState(
|
||||
val tab: LibraryTab = LibraryTab.PLAYLISTS,
|
||||
val albums: List<Album> = emptyList(),
|
||||
val albumSort: AlbumSort = AlbumSort.AZ,
|
||||
val albumSort: AlbumSort = AlbumSort.NEWEST,
|
||||
val artistIndexes: List<ArtistIndex> = emptyList(),
|
||||
val playlists: List<Playlist> = emptyList(),
|
||||
val isLoading: Boolean = false,
|
||||
|
||||
Reference in new issue
Block a user