From 4a27806825e65f7833c5837fb1a675e64de9157c Mon Sep 17 00:00:00 2001 From: DirazCoder <136752573+DirazCoder@users.noreply.github.com> Date: Mon, 24 Aug 2026 22:23:02 +0100 Subject: [PATCH] Add confirmation for removing all dead scrobbles Added confirmation dialog before removing all failed scrobbles. --- src/client/deadLetter/DeadPage.tsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/client/deadLetter/DeadPage.tsx b/src/client/deadLetter/DeadPage.tsx index 66e426f2..10de98f1 100644 --- a/src/client/deadLetter/DeadPage.tsx +++ b/src/client/deadLetter/DeadPage.tsx @@ -54,7 +54,12 @@ const dead = (props: PropsFromRedux) => { const retryDead = useCallback((id: string) => retryDeadFetch({name: searchParams.get('name'), type: searchParams.get('type'), id}), [retryDeadFetch, searchParams]); const removeDead = useCallback((id: string) => removeDeadFetch({name: searchParams.get('name'), type: searchParams.get('type'), id}), [removeDeadFetch, searchParams]); - const removeAllDead = useCallback(() => removeAllDeadFetch({name: searchParams.get('name'), type: searchParams.get('type')}), [removeAllDeadFetch, searchParams]); + // this deletes everything, no undo, so double check with the user first + const removeAllDead = useCallback(() => { + if (window.confirm('Remove all failed scrobbles? This cannot be undone.')) { + removeAllDeadFetch({name: searchParams.get('name'), type: searchParams.get('type')}); + } + }, [removeAllDeadFetch, searchParams]); const retryAllDead = useCallback(() => retryAllDeadFetch({name: searchParams.get('name'), type: searchParams.get('type')}), [retryAllDeadFetch, searchParams]); return ( -- 2.51.2