Fix: focus textarea after AI generation for manual editing

This commit is contained in:
Christian Vidal Wolf
2026-04-09 10:20:59 +02:00
parent f125572572
commit 0b100398e7
+6
View File
@@ -127,6 +127,11 @@ export function EditPanel({ row, rowIndex, onSave, onClose, onCaptureState }: Ed
const generatedText = await generateGemini(prompt, systemPrompt); const generatedText = await generateGemini(prompt, systemPrompt);
setFormData(prev => ({ ...prev, [field]: generatedText.trim() })); setFormData(prev => ({ ...prev, [field]: generatedText.trim() }));
setGeneratedFields(prev => new Set(prev).add(field)); setGeneratedFields(prev => new Set(prev).add(field));
// Focus the textarea so user can edit immediately after AI generation
setTimeout(() => {
const textarea = document.getElementById(`field-${field}`);
if (textarea) textarea.focus();
}, 100);
} catch (err: any) { } catch (err: any) {
setError(err.message || 'An error occurred during generation.'); setError(err.message || 'An error occurred during generation.');
} finally { } finally {
@@ -205,6 +210,7 @@ export function EditPanel({ row, rowIndex, onSave, onClose, onCaptureState }: Ed
)} )}
</div> </div>
<textarea <textarea
id={`field-${String(field)}`}
value={formData[field]} value={formData[field]}
onChange={e => setFormData(prev => ({ ...prev, [field]: e.target.value }))} onChange={e => setFormData(prev => ({ ...prev, [field]: e.target.value }))}
className={cn( className={cn(