diff --git a/web/src/lib/components/moderation/ReportDialog.svelte b/web/src/lib/components/moderation/ReportDialog.svelte index 73e225f33..154268f16 100644 --- a/web/src/lib/components/moderation/ReportDialog.svelte +++ b/web/src/lib/components/moderation/ReportDialog.svelte @@ -49,10 +49,13 @@ clear(); }); - // resetting on close would swap the panel back to the form while it is still - // fading out, so a sent report waits for the next open to clear itself + // clearing on close would swap the form back in behind the panel while it is + // still fading out, so a sent report keeps its confirmation and resets on the + // way back in + let showing = false; $effect(() => { - if (open && sent) clear(); + if (open && !showing && sent) clear(); + showing = open; }); const submit = createAction(async () => {