Previne fechamento acidental do modal de quadrinhos ao clicar fora e adiciona auto-salvamento automatico pos-geracao

This commit is contained in:
2026-08-31 19:51:43 +00:00
parent 6d02868116
commit 8894a5068e
+21 -4
View File
@@ -4914,17 +4914,26 @@ Se algum dado não for mencionado, deixe a string vazia ou false para boolean.`
}
if (btnCloseComicsModal) {
btnCloseComicsModal.addEventListener('click', () => {
btnCloseComicsModal.addEventListener('click', async () => {
if (comicsGenerateLoader && comicsGenerateLoader.style.display === 'flex') {
const confirmed = await showCustomConfirm(
'Geração em Andamento',
'Sua história ainda está sendo gerada. Deseja realmente sair e cancelar a criação?'
);
if (!confirmed) return;
}
fabricaQuadrinhosModal.style.display = 'none';
if (comicsVideoPlayer) comicsVideoPlayer.pause();
});
}
// Fechar modal clicando fora
// Prevenir fechamento acidental ao clicar fora da janela do modal
window.addEventListener('click', (e) => {
if (e.target === fabricaQuadrinhosModal) {
fabricaQuadrinhosModal.style.display = 'none';
if (comicsVideoPlayer) comicsVideoPlayer.pause();
if (comicsGenerateLoader && comicsGenerateLoader.style.display === 'flex') {
showCustomAlert('Aviso', 'Sua história em quadrinhos está sendo gerada. Por favor, aguarde a conclusão.');
}
// O modal permanece aberto para proteger o trabalho da professora contra cliques acidentais fora da janela
}
});
@@ -5126,6 +5135,14 @@ Se algum dado não for mencionado, deixe a string vazia ou false para boolean.`
comicsResultArea.style.display = 'flex';
btnGenerateComics.disabled = false;
// Salvamento automático imediato pós-geração para garantir que a história NUNCA se perca
try {
await saveComicsProjectFlow(false);
await showCustomAlert('🎉 História Gerada e Salva!', 'Sua história em quadrinhos foi concluída e salva automaticamente em "Meus Projetos"!');
} catch (autoSaveErr) {
console.warn('Falha no auto-salvamento pós geração:', autoSaveErr.message);
}
} catch (err) {
console.error('Erro ao fabricar quadrinhos:', err);
await showCustomAlert('Erro', 'Erro ao fabricar quadrinhos: ' + err.message);