From 0a6ecd25daf4013de33ba25e5cf9ff594900360b Mon Sep 17 00:00:00 2001 From: drelich Date: Wed, 25 Mar 2026 23:36:02 +0100 Subject: [PATCH] Fix scroll position when typing in long notes - Preserve textarea scroll position during auto-resize in onChange handler - Prevents view from jumping to top when typing below the fold --- src/components/NoteEditor.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/components/NoteEditor.tsx b/src/components/NoteEditor.tsx index d988777..cf5ed74 100644 --- a/src/components/NoteEditor.tsx +++ b/src/components/NoteEditor.tsx @@ -861,9 +861,11 @@ export function NoteEditor({ note, onUpdateNote, onUnsavedChanges, categories, i value={localContent} onChange={(e) => { handleContentChange(e.target.value); - // Auto-resize textarea to fit content + // Auto-resize textarea to fit content while preserving scroll position + const scrollTop = e.target.scrollTop; e.target.style.height = 'auto'; e.target.style.height = e.target.scrollHeight + 'px'; + e.target.scrollTop = scrollTop; }} className="w-full resize-none border-none outline-none focus:ring-0 bg-transparent text-gray-900 dark:text-gray-100 overflow-hidden" style={{ fontSize: `${editorFontSize}px`, lineHeight: '1.6', minHeight: '100%', fontFamily: editorFont }}