From 2edc56e8f02f7c55e9e375ed42aa1722c4eee03e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Gustavo?= Date: Thu, 4 Dec 2025 12:40:33 -0300 Subject: [PATCH] fix: edit-report --- susconecta/app/laudos/[id]/editar/page.tsx | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/susconecta/app/laudos/[id]/editar/page.tsx b/susconecta/app/laudos/[id]/editar/page.tsx index bd6efc9..f2b0b43 100644 --- a/susconecta/app/laudos/[id]/editar/page.tsx +++ b/susconecta/app/laudos/[id]/editar/page.tsx @@ -236,7 +236,20 @@ export default function EditarLaudoPage() { useEffect(() => { if (content && editorRef.current && !loading) { console.log('[EditarLaudoPage] Injecting content into editor, length:', content.length); - editorRef.current.innerHTML = content; + // Só injetar se o conteúdo do editor estiver vazio ou muito diferente + const currentContent = editorRef.current.innerHTML; + if (!currentContent || currentContent.length === 0) { + editorRef.current.innerHTML = content; + // Mover cursor para o final + const range = document.createRange(); + const sel = window.getSelection(); + if (editorRef.current.childNodes.length > 0) { + range.selectNodeContents(editorRef.current); + range.collapse(false); // false = colapsar no final + sel?.removeAllRanges(); + sel?.addRange(range); + } + } } }, [content, loading]); @@ -584,7 +597,10 @@ export default function EditarLaudoPage() {
setContent(e.currentTarget.innerHTML)} + onInput={(e) => { + // Capturar conteúdo sem perder posição do cursor + setContent(e.currentTarget.innerHTML); + }} onPaste={(e) => { e.preventDefault(); const text = e.clipboardData.getData('text/plain');