Feito uma correção de bug onde o diálogo principal de nova conta fechava inesperadamente

This commit is contained in:
Guilherme Bano
2026-02-20 09:59:16 -03:00
committed by Felipe Coutinho
parent 9b78f839bf
commit 7b3979ad8e
5 changed files with 62 additions and 8 deletions

View File

@@ -152,7 +152,10 @@ export function AccountDialog({
currentName: formState.name,
onUpdate: (updates) => {
updateFields(updates);
setLogoDialogOpen(false);
// Delay closing to avoid race condition on mobile
requestAnimationFrame(() => {
setLogoDialogOpen(false);
});
},
});
@@ -205,11 +208,29 @@ export function AccountDialog({
: "Atualize as informações da conta selecionada.";
const submitLabel = mode === "create" ? "Salvar conta" : "Atualizar conta";
const handleMainDialogOpenChange = useCallback(
(open: boolean) => {
if (!open && logoDialogOpen) {
return;
}
setDialogOpen(open);
},
[logoDialogOpen, setDialogOpen],
);
return (
<>
<Dialog open={dialogOpen} onOpenChange={setDialogOpen}>
<Dialog open={dialogOpen} onOpenChange={handleMainDialogOpenChange}>
{trigger ? <DialogTrigger asChild>{trigger}</DialogTrigger> : null}
<DialogContent className="sm:max-w-xl">
<DialogContent
className="sm:max-w-xl"
onPointerDownOutside={(e) => {
if (logoDialogOpen) e.preventDefault();
}}
onInteractOutside={(e) => {
if (logoDialogOpen) e.preventDefault();
}}
>
<DialogHeader>
<DialogTitle>{title}</DialogTitle>
<DialogDescription>{description}</DialogDescription>