From 9e49a45db947e4a43ee327ef4e9c851d574ede83 Mon Sep 17 00:00:00 2001 From: jeffvli Date: Mon, 15 Dec 2025 21:07:24 -0800 Subject: [PATCH] fix initial list order on artist discography (#1378) --- .../features/albums/components/album-list-content.tsx | 3 ++- .../features/albums/hooks/use-album-list-filters.ts | 8 +++++--- .../features/songs/components/song-list-content.tsx | 3 ++- .../features/songs/hooks/use-song-list-filters.ts | 11 +++++------ 4 files changed, 14 insertions(+), 11 deletions(-) diff --git a/src/renderer/features/albums/components/album-list-content.tsx b/src/renderer/features/albums/components/album-list-content.tsx index 650304d6d..2e06b8271 100644 --- a/src/renderer/features/albums/components/album-list-content.tsx +++ b/src/renderer/features/albums/components/album-list-content.tsx @@ -87,8 +87,9 @@ export const AlbumListView = ({ table, }: ItemListSettings & { overrideQuery?: OverrideAlbumListQuery }) => { const server = useCurrentServer(); + const { pageKey } = useListContext(); - const { query } = useAlbumListFilters(); + const { query } = useAlbumListFilters(pageKey as ItemListKey); const mergedQuery = useMemo(() => { if (!overrideQuery) { diff --git a/src/renderer/features/albums/hooks/use-album-list-filters.ts b/src/renderer/features/albums/hooks/use-album-list-filters.ts index 6c4a6333b..0ba91d80a 100644 --- a/src/renderer/features/albums/hooks/use-album-list-filters.ts +++ b/src/renderer/features/albums/hooks/use-album-list-filters.ts @@ -15,13 +15,15 @@ import { import { AlbumListSort, SortOrder } from '/@/shared/types/domain-types'; import { ItemListKey } from '/@/shared/types/types'; -export const useAlbumListFilters = () => { +export const useAlbumListFilters = (listKey?: ItemListKey) => { + const resolvedListKey = listKey ?? ItemListKey.ALBUM; + const { setSortBy, sortBy } = useSortByFilter( AlbumListSort.NAME, - ItemListKey.ALBUM, + resolvedListKey, ); - const { setSortOrder, sortOrder } = useSortOrderFilter(SortOrder.ASC, ItemListKey.ALBUM); + const { setSortOrder, sortOrder } = useSortOrderFilter(SortOrder.ASC, resolvedListKey); const { searchTerm, setSearchTerm } = useSearchTermFilter(''); diff --git a/src/renderer/features/songs/components/song-list-content.tsx b/src/renderer/features/songs/components/song-list-content.tsx index d10eb20ce..e6c732b97 100644 --- a/src/renderer/features/songs/components/song-list-content.tsx +++ b/src/renderer/features/songs/components/song-list-content.tsx @@ -84,8 +84,9 @@ export const SongListView = ({ table, }: ItemListSettings & { overrideQuery?: OverrideSongListQuery }) => { const server = useCurrentServer(); + const { pageKey } = useListContext(); - const { query } = useSongListFilters(); + const { query } = useSongListFilters(pageKey as ItemListKey); const mergedQuery = useMemo(() => { if (!overrideQuery) { diff --git a/src/renderer/features/songs/hooks/use-song-list-filters.ts b/src/renderer/features/songs/hooks/use-song-list-filters.ts index d3160395d..39725ccc4 100644 --- a/src/renderer/features/songs/hooks/use-song-list-filters.ts +++ b/src/renderer/features/songs/hooks/use-song-list-filters.ts @@ -16,13 +16,12 @@ import { import { SongListSort, SortOrder } from '/@/shared/types/domain-types'; import { ItemListKey } from '/@/shared/types/types'; -export const useSongListFilters = () => { - const { setSortBy, sortBy } = useSortByFilter( - SongListSort.NAME, - ItemListKey.SONG, - ); +export const useSongListFilters = (listKey?: ItemListKey) => { + const resolvedListKey = listKey ?? ItemListKey.SONG; - const { setSortOrder, sortOrder } = useSortOrderFilter(SortOrder.ASC, ItemListKey.SONG); + const { setSortBy, sortBy } = useSortByFilter(SongListSort.NAME, resolvedListKey); + + const { setSortOrder, sortOrder } = useSortOrderFilter(SortOrder.ASC, resolvedListKey); const { searchTerm, setSearchTerm } = useSearchTermFilter('');