fix(playback): Lucky Mix after switching Subsonic servers (#785)

* fix(playback): Lucky Mix after switching Subsonic servers

Hand off unpinned legacy queues to the browsed server, start the mix lock
before async work, skip cross-server enqueue toasts while rolling, bind
queue server before batch enqueues, and restore queueServerId on failed builds.

* chore(release): CHANGELOG and credits for PR #785
This commit is contained in:
cucadmuh
2026-05-18 23:38:47 +03:00
committed by GitHub
parent d7b23b3c08
commit 64a8a0ed8a
6 changed files with 48 additions and 5 deletions
+2
View File
@@ -19,6 +19,7 @@ import { clearSeekFallbackRetry } from './seekFallbackState';
import { clearSeekTarget } from './seekTargetState';
import i18n from '../i18n';
import { playbackServerDiffersFromActive, clearQueueServerForPlayback } from '../utils/playback/playbackServer';
import { useLuckyMixStore } from './luckyMixStore';
import { showToast } from '../utils/ui/toast';
type SetState = (
@@ -27,6 +28,7 @@ type SetState = (
type GetState = () => PlayerState;
function blockCrossServerEnqueue(): boolean {
if (useLuckyMixStore.getState().isRolling) return false;
if (!playbackServerDiffersFromActive()) return false;
showToast(i18n.t('queue.crossServerEnqueueBlocked'), 4500, 'error');
return true;