From 0ed13c75af51dc3f7237ea146b48104eeb36506d Mon Sep 17 00:00:00 2001 From: jeffvli Date: Tue, 3 Jan 2023 03:16:53 -0800 Subject: [PATCH] Fix stale state on playqueue when switching server --- .../player/hooks/use-handle-playqueue-add.ts | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/renderer/features/player/hooks/use-handle-playqueue-add.ts b/src/renderer/features/player/hooks/use-handle-playqueue-add.ts index b4239a84..07ba0d1f 100644 --- a/src/renderer/features/player/hooks/use-handle-playqueue-add.ts +++ b/src/renderer/features/player/hooks/use-handle-playqueue-add.ts @@ -6,7 +6,12 @@ import { JFSong } from '/@/renderer/api/jellyfin.types'; import { ndNormalize } from '/@/renderer/api/navidrome.api'; import { NDSong } from '/@/renderer/api/navidrome.types'; import { queryKeys } from '/@/renderer/api/query-keys'; -import { useAuthStore, usePlayerStore } from '/@/renderer/store'; +import { + useAuthStore, + useCurrentServer, + usePlayerControls, + usePlayerStore, +} from '/@/renderer/store'; import { usePlayerType } from '/@/renderer/store/settings.store'; import { PlayQueueAddOptions, LibraryItem, Play, PlaybackType } from '/@/renderer/types'; import { toast } from '/@/renderer/components/toast'; @@ -20,7 +25,8 @@ export const useHandlePlayQueueAdd = () => { const queryClient = useQueryClient(); const playerType = usePlayerType(); const deviceId = useAuthStore.getState().deviceId; - const server = useAuthStore.getState().currentServer; + const server = useCurrentServer(); + const { play } = usePlayerControls(); const handlePlayQueueAdd = useCallback( async (options: PlayQueueAddOptions) => { @@ -125,12 +131,12 @@ export const useHandlePlayQueueAdd = () => { mpvPlayer.play(); } - usePlayerStore.getState().actions.play(); + play(); } return null; }, - [deviceId, playerType, queryClient, server], + [deviceId, play, playerType, queryClient, server], ); return handlePlayQueueAdd;