mirror of
https://github.com/wavetermdev/waveterm.git
synced 2024-12-21 16:38:23 +01:00
Fix issue where WaveAI text area would resize on launch (#1397)
This commit is contained in:
parent
8ec3c3f330
commit
cb50023d79
@ -572,24 +572,33 @@ const ChatInput = forwardRef<HTMLTextAreaElement, ChatInputProps>(
|
||||
model.textAreaRef = textAreaRef;
|
||||
}, []);
|
||||
|
||||
const adjustTextAreaHeight = () => {
|
||||
if (textAreaRef.current == null) {
|
||||
return;
|
||||
}
|
||||
// Adjust the height of the textarea to fit the text
|
||||
const textAreaMaxLines = 100;
|
||||
const textAreaLineHeight = termFontSize * 1.5;
|
||||
const textAreaMinHeight = textAreaLineHeight;
|
||||
const textAreaMaxHeight = textAreaLineHeight * textAreaMaxLines;
|
||||
const adjustTextAreaHeight = useCallback(
|
||||
(value: string) => {
|
||||
if (textAreaRef.current == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
textAreaRef.current.style.height = "1px";
|
||||
const scrollHeight = textAreaRef.current.scrollHeight;
|
||||
const newHeight = Math.min(Math.max(scrollHeight, textAreaMinHeight), textAreaMaxHeight);
|
||||
textAreaRef.current.style.height = newHeight + "px";
|
||||
};
|
||||
// Adjust the height of the textarea to fit the text
|
||||
const textAreaMaxLines = 5;
|
||||
const textAreaLineHeight = termFontSize * 1.5;
|
||||
const textAreaMinHeight = textAreaLineHeight;
|
||||
const textAreaMaxHeight = textAreaLineHeight * textAreaMaxLines;
|
||||
|
||||
if (value === "") {
|
||||
textAreaRef.current.style.height = `${textAreaLineHeight}px`;
|
||||
return;
|
||||
}
|
||||
|
||||
textAreaRef.current.style.height = `${textAreaLineHeight}px`;
|
||||
const scrollHeight = textAreaRef.current.scrollHeight;
|
||||
const newHeight = Math.min(Math.max(scrollHeight, textAreaMinHeight), textAreaMaxHeight);
|
||||
textAreaRef.current.style.height = newHeight + "px";
|
||||
},
|
||||
[termFontSize]
|
||||
);
|
||||
|
||||
useEffect(() => {
|
||||
adjustTextAreaHeight();
|
||||
adjustTextAreaHeight(value);
|
||||
}, [value]);
|
||||
|
||||
return (
|
||||
|
Loading…
Reference in New Issue
Block a user