From d9fb7f1b21c8e6bb30802cc2abdac5370d84b3c3 Mon Sep 17 00:00:00 2001 From: Gregory Schier Date: Thu, 19 Sep 2024 08:03:18 -0700 Subject: [PATCH] Fix autoSelect for PlainInput.tsx --- src-web/components/core/PlainInput.tsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src-web/components/core/PlainInput.tsx b/src-web/components/core/PlainInput.tsx index ca6a44e8..578c22d1 100644 --- a/src-web/components/core/PlainInput.tsx +++ b/src-web/components/core/PlainInput.tsx @@ -32,6 +32,7 @@ export const PlainInput = forwardRef(function size = 'md', type = 'text', validate, + autoSelect, ...props }: PlainInputProps, ref, @@ -39,11 +40,15 @@ export const PlainInput = forwardRef(function const [obscured, setObscured] = useStateWithDeps(type === 'password', [type]); const [currentValue, setCurrentValue] = useState(defaultValue ?? ''); const [focused, setFocused] = useState(false); + const inputRef = useRef(null); const handleFocus = useCallback(() => { setFocused(true); + if (autoSelect) { + inputRef.current?.select(); + } onFocus?.(); - }, [onFocus]); + }, [autoSelect, onFocus]); const handleBlur = useCallback(() => { setFocused(false);