diff --git a/frontend/src/components/ui/input-group.tsx b/frontend/src/components/ui/input-group.tsx index 5f18172f..8b0eed41 100644 --- a/frontend/src/components/ui/input-group.tsx +++ b/frontend/src/components/ui/input-group.tsx @@ -134,7 +134,7 @@ function InputGroupTextarea({ className, ...props }: React.ComponentProps<'texta ); } -function InputGroupTextareaAutosize({ className, ...props }: React.ComponentPropsWithoutRef) { +function InputGroupTextareaAutosize({ className, ...props }: React.ComponentProps) { return ( (null); + const previousFormDisabledRef = useRef(isFormDisabled); + + useEffect(() => { + const isDisabled = previousFormDisabledRef.current; + previousFormDisabledRef.current = isFormDisabled; + + if (isDisabled && !isFormDisabled) { + textareaRef.current?.focus(); + } + }, [isFormDisabled]); + const handleSubmit = async (values: FlowFormValues) => { await onSubmit(values); resetField('message'); @@ -157,6 +169,10 @@ export const FlowForm = ({ minRows={1} onKeyDown={handleKeyDown} placeholder={placeholder} + ref={(element) => { + field.ref(element); + textareaRef.current = element; + }} />