Merge pull request #14673 from overleaf/jdt-improve-character-selection-chat

Jdt improve character selection chat

GitOrigin-RevId: 9d9f22aeda5e333e807b710f8ea14bbd47dc7f0c
This commit is contained in:
Jimmy Domagala-Tang 2023-09-12 11:29:49 -04:00 committed by Copybot
parent d19090e398
commit 7a7689e9c5

View file

@ -1,19 +1,26 @@
import PropTypes from 'prop-types'
import { useTranslation } from 'react-i18next'
function MessageInput({ resetUnreadMessages, sendMessage }) {
type MessageInputProps = {
resetUnreadMessages: () => void
sendMessage: (message: string) => void
}
function MessageInput({ resetUnreadMessages, sendMessage }: MessageInputProps) {
const { t } = useTranslation()
function handleKeyDown(event) {
if (event.key === 'Enter') {
function handleKeyDown(event: React.KeyboardEvent) {
const selectingCharacter = event.nativeEvent.isComposing
if (event.key === 'Enter' && !selectingCharacter) {
event.preventDefault()
sendMessage(event.target.value)
const target = event.target as HTMLInputElement
sendMessage(target.value)
// wrap the form reset in setTimeout so input sources have time to finish
// https://github.com/overleaf/internal/pull/9206
window.setTimeout(() => {
event.target.blur()
event.target.closest('form').reset()
event.target.focus()
target.blur()
target.closest('form')?.reset()
target.focus()
}, 0)
}
}