fix: distinguish PC/Mobile behavior on auto-scroll

The chat list should be set to auto-scroll on mobile screen when the
input textarea is focused. It should not behave like that on PC screen
because user may want to refer to previous content.
main
xiaotianxt 2 years ago
parent 85bf4ac077
commit dd20c36a55

@ -421,6 +421,7 @@ export function Chat(props: {
// check if should send message // check if should send message
const onInputKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => { const onInputKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {
if (shouldSubmit(e)) { if (shouldSubmit(e)) {
setAutoScroll(true);
onUserSubmit(); onUserSubmit();
e.preventDefault(); e.preventDefault();
} }
@ -667,7 +668,7 @@ export function Chat(props: {
onInput={(e) => onInput(e.currentTarget.value)} onInput={(e) => onInput(e.currentTarget.value)}
value={userInput} value={userInput}
onKeyDown={onInputKeyDown} onKeyDown={onInputKeyDown}
onFocus={() => setAutoScroll(true)} onFocus={() => setAutoScroll(isMobileScreen())}
onBlur={() => { onBlur={() => {
setAutoScroll(false); setAutoScroll(false);
setTimeout(() => setPromptHints([]), 500); setTimeout(() => setPromptHints([]), 500);

Loading…
Cancel
Save