diff --git a/src/renderer/features/albums/components/album-detail-content.tsx b/src/renderer/features/albums/components/album-detail-content.tsx
index dbea9ba67..51886c9ae 100644
--- a/src/renderer/features/albums/components/album-detail-content.tsx
+++ b/src/renderer/features/albums/components/album-detail-content.tsx
@@ -21,7 +21,10 @@ import { ItemControls } from '/@/renderer/components/item-list/types';
import { albumQueries } from '/@/renderer/features/albums/api/album-api';
import { AlbumInfiniteCarousel } from '/@/renderer/features/albums/components/album-infinite-carousel';
import { usePlayer } from '/@/renderer/features/player/context/player-context';
-import { ListConfigMenu } from '/@/renderer/features/shared/components/list-config-menu';
+import {
+ ListConfigMenu,
+ SONG_DISPLAY_TYPES,
+} from '/@/renderer/features/shared/components/list-config-menu';
import {
CLIENT_SIDE_SONG_FILTERS,
ListSortByDropdownControlled,
@@ -755,7 +758,10 @@ const AlbumDetailSongsTable = ({ songs }: AlbumDetailSongsTableProps) => {
sortOrder={sortOrder}
/>
{
{
buttonProps={{
variant: 'subtle',
}}
- displayTypes={[{ hidden: true, value: ListDisplayType.GRID }]}
+ displayTypes={[
+ { hidden: true, value: ListDisplayType.GRID },
+ ...SONG_DISPLAY_TYPES,
+ ]}
listKey={ItemListKey.FULL_SCREEN}
optionsConfig={{
table: {
diff --git a/src/renderer/features/player/components/mobile-fullscreen-player-header.tsx b/src/renderer/features/player/components/mobile-fullscreen-player-header.tsx
index f8070dc69..72eadde23 100644
--- a/src/renderer/features/player/components/mobile-fullscreen-player-header.tsx
+++ b/src/renderer/features/player/components/mobile-fullscreen-player-header.tsx
@@ -4,7 +4,10 @@ import { useTranslation } from 'react-i18next';
import styles from './mobile-fullscreen-player.module.css';
import { SONG_TABLE_COLUMNS } from '/@/renderer/components/item-list/item-table-list/default-columns';
-import { ListConfigMenu } from '/@/renderer/features/shared/components/list-config-menu';
+import {
+ ListConfigMenu,
+ SONG_DISPLAY_TYPES,
+} from '/@/renderer/features/shared/components/list-config-menu';
import {
useFullScreenPlayerStore,
useFullScreenPlayerStoreActions,
@@ -365,7 +368,10 @@ export const MobileFullscreenPlayerHeader = memo(
buttonProps={{
variant: isPageHovered ? 'default' : 'subtle',
}}
- displayTypes={[{ hidden: true, value: ListDisplayType.GRID }]}
+ displayTypes={[
+ { hidden: true, value: ListDisplayType.GRID },
+ ...SONG_DISPLAY_TYPES,
+ ]}
listKey={ItemListKey.FULL_SCREEN}
optionsConfig={{
table: {
diff --git a/src/renderer/features/playlists/components/playlist-detail-song-list-header-filters.tsx b/src/renderer/features/playlists/components/playlist-detail-song-list-header-filters.tsx
index b02f5ea81..f12227830 100644
--- a/src/renderer/features/playlists/components/playlist-detail-song-list-header-filters.tsx
+++ b/src/renderer/features/playlists/components/playlist-detail-song-list-header-filters.tsx
@@ -16,7 +16,10 @@ import { playlistsQueries } from '/@/renderer/features/playlists/api/playlists-a
import { ClientSideSongFilters } from '/@/renderer/features/playlists/components/client-side-song-filters';
import { usePlaylistSongListFilters } from '/@/renderer/features/playlists/hooks/use-playlist-song-list-filters';
import { FilterButton } from '/@/renderer/features/shared/components/filter-button';
-import { ListConfigMenu } from '/@/renderer/features/shared/components/list-config-menu';
+import {
+ ListConfigMenu,
+ SONG_DISPLAY_TYPES,
+} from '/@/renderer/features/shared/components/list-config-menu';
import { ListDisplayTypeToggleButton } from '/@/renderer/features/shared/components/list-display-type-toggle-button';
import { isFilterValueSet } from '/@/renderer/features/shared/components/list-filters';
import { ListRefreshButton } from '/@/renderer/features/shared/components/list-refresh-button';
@@ -229,6 +232,7 @@ export const PlaylistDetailSongListHeaderFilters = ({
/>
) : (
diff --git a/src/renderer/features/search/components/search-header.tsx b/src/renderer/features/search/components/search-header.tsx
index 2fae44b1d..7c3f62e45 100644
--- a/src/renderer/features/search/components/search-header.tsx
+++ b/src/renderer/features/search/components/search-header.tsx
@@ -11,7 +11,10 @@ import {
import { PageHeader } from '/@/renderer/components/page-header/page-header';
import { FilterBar } from '/@/renderer/features/shared/components/filter-bar';
import { LibraryHeaderBar } from '/@/renderer/features/shared/components/library-header-bar';
-import { ListConfigMenu } from '/@/renderer/features/shared/components/list-config-menu';
+import {
+ ListConfigMenu,
+ SONG_DISPLAY_TYPES,
+} from '/@/renderer/features/shared/components/list-config-menu';
import { SearchInput } from '/@/renderer/features/shared/components/search-input';
import { AppRoute } from '/@/renderer/router/routes';
import { Button, ButtonGroup } from '/@/shared/components/button/button';
@@ -44,6 +47,7 @@ export const SearchHeader = ({ navigationId }: SearchHeaderProps) => {
tableColumnsData: ALBUM_ARTIST_TABLE_COLUMNS,
},
[LibraryItem.SONG]: {
+ displayTypes: SONG_DISPLAY_TYPES,
listKey: ItemListKey.SONG,
tableColumnsData: SONG_TABLE_COLUMNS,
},
diff --git a/src/renderer/features/shared/components/list-config-menu.tsx b/src/renderer/features/shared/components/list-config-menu.tsx
index d93e47885..347a089a4 100644
--- a/src/renderer/features/shared/components/list-config-menu.tsx
+++ b/src/renderer/features/shared/components/list-config-menu.tsx
@@ -18,6 +18,10 @@ import { Table } from '/@/shared/components/table/table';
import { useDisclosure } from '/@/shared/hooks/use-disclosure';
import { ItemListKey, ListDisplayType } from '/@/shared/types/types';
+export const SONG_DISPLAY_TYPES: ListConfigMenuDisplayTypeConfig[] = [
+ { hidden: true, value: ListDisplayType.DETAIL },
+];
+
const DISPLAY_TYPES = [
{
label: (
diff --git a/src/renderer/features/songs/components/song-list-header-filters.tsx b/src/renderer/features/songs/components/song-list-header-filters.tsx
index 8c40c38aa..ae1f33a9a 100644
--- a/src/renderer/features/songs/components/song-list-header-filters.tsx
+++ b/src/renderer/features/songs/components/song-list-header-filters.tsx
@@ -4,7 +4,10 @@ import { useTranslation } from 'react-i18next';
import { SONG_TABLE_COLUMNS } from '/@/renderer/components/item-list/item-table-list/default-columns';
import { useListContext } from '/@/renderer/context/list-context';
import { useAlbumListFilters } from '/@/renderer/features/albums/hooks/use-album-list-filters';
-import { ListConfigMenu } from '/@/renderer/features/shared/components/list-config-menu';
+import {
+ ListConfigMenu,
+ SONG_DISPLAY_TYPES,
+} from '/@/renderer/features/shared/components/list-config-menu';
import { ListDisplayTypeToggleButton } from '/@/renderer/features/shared/components/list-display-type-toggle-button';
import {
isFilterValueSet,
@@ -91,7 +94,11 @@ export const SongListHeaderFilters = ({ toggleGenreTarget }: { toggleGenreTarget
-
+
);