From bee749985a717bedcb9860bd720445337849e8b4 Mon Sep 17 00:00:00 2001 From: diondiondion Date: Wed, 15 Jul 2026 11:28:44 +0200 Subject: [PATCH] Fix page refresh when trying to save custom profile fields (#39828) --- .../confirmation_modal.tsx | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/app/javascript/mastodon/features/ui/components/confirmation_modals/confirmation_modal.tsx b/app/javascript/mastodon/features/ui/components/confirmation_modals/confirmation_modal.tsx index 3dfd3124d1..a581cb232f 100644 --- a/app/javascript/mastodon/features/ui/components/confirmation_modals/confirmation_modal.tsx +++ b/app/javascript/mastodon/features/ui/components/confirmation_modals/confirmation_modal.tsx @@ -52,13 +52,18 @@ export const ConfirmationModal: React.FC< noCloseOnConfirm = false, noFocusButton = false, }) => { - const handleClick = useCallback(() => { - if (!noCloseOnConfirm) { - onClose(); - } + const handleSubmit = useCallback>( + (e) => { + e.preventDefault(); - void onConfirm(); - }, [onClose, onConfirm, noCloseOnConfirm]); + if (!noCloseOnConfirm) { + onClose(); + } + + void onConfirm(); + }, + [onClose, onConfirm, noCloseOnConfirm], + ); const handleSecondary = useCallback(() => { onClose(); @@ -66,7 +71,7 @@ export const ConfirmationModal: React.FC< }, [onClose, onSecondary]); return ( - + {noFocusButton ? ( @@ -107,7 +112,6 @@ export const ConfirmationModal: React.FC< {/* eslint-disable jsx-a11y/no-autofocus -- we are in a modal and thus autofocusing is justified */}