From 1a16b74f98b8a6d64001d16171955e7479a92f24 Mon Sep 17 00:00:00 2001 From: jeffvli Date: Mon, 10 Nov 2025 20:28:46 -0800 Subject: [PATCH] add loading overlay to playqueue on fetching --- .../now-playing/components/play-queue.tsx | 48 +++++++++++-------- .../components/sidebar-play-queue.tsx | 3 +- 2 files changed, 28 insertions(+), 23 deletions(-) diff --git a/src/renderer/features/now-playing/components/play-queue.tsx b/src/renderer/features/now-playing/components/play-queue.tsx index e2ef1fb0b..17f6b548d 100644 --- a/src/renderer/features/now-playing/components/play-queue.tsx +++ b/src/renderer/features/now-playing/components/play-queue.tsx @@ -5,8 +5,10 @@ import { forwardRef, useEffect, useMemo, useRef } from 'react'; import { ItemTableList } from '/@/renderer/components/item-list/item-table-list/item-table-list'; import { ItemTableListColumn } from '/@/renderer/components/item-list/item-table-list/item-table-list-column'; +import { useIsPlayerFetching } from '/@/renderer/features/player/context/player-context'; import { useListSettings, usePlayerQueue } from '/@/renderer/store'; import { searchSongs } from '/@/renderer/utils/search-songs'; +import { LoadingOverlay } from '/@/shared/components/loading-overlay/loading-overlay'; import { LibraryItem, QueueSong } from '/@/shared/types/domain-types'; import { ItemListKey } from '/@/shared/types/types'; @@ -19,6 +21,7 @@ export const PlayQueue = forwardRef(({ listKey, searchTerm }: QueueProps, ref: R const { table } = useListSettings(listKey); const queue = usePlayerQueue(); + const isFetching = useIsPlayerFetching(); const data: QueueSong[] = useMemo(() => { if (searchTerm) { @@ -58,26 +61,29 @@ export const PlayQueue = forwardRef(({ listKey, searchTerm }: QueueProps, ref: R }, [data.length, playQueueKeyRef]); return ( - + <> + + + ); }); diff --git a/src/renderer/features/now-playing/components/sidebar-play-queue.tsx b/src/renderer/features/now-playing/components/sidebar-play-queue.tsx index 8e6cd4144..e017ff3a6 100644 --- a/src/renderer/features/now-playing/components/sidebar-play-queue.tsx +++ b/src/renderer/features/now-playing/components/sidebar-play-queue.tsx @@ -7,11 +7,10 @@ import { ItemListKey } from '/@/shared/types/types'; export const SidebarPlayQueue = () => { const tableRef = useRef(null); - // const queueRef = useRef }>(null); const [search, setSearch] = useState(undefined); return ( - +