From fa791bbe240e06cb7381619e7be852cf977ae702 Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Wed, 4 Jun 2025 20:40:51 +0200 Subject: [PATCH] New Chat: Fix clearing input after confirming user selection (#5941) --- src/components/left/newChat/NewChat.tsx | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/components/left/newChat/NewChat.tsx b/src/components/left/newChat/NewChat.tsx index 694c2904f..8c7660883 100644 --- a/src/components/left/newChat/NewChat.tsx +++ b/src/components/left/newChat/NewChat.tsx @@ -6,6 +6,8 @@ import { LeftColumnContent } from '../../../types'; import { LAYERS_ANIMATION_NAME } from '../../../util/browser/windowEnvironment'; +import useLastCallback from '../../../hooks/useLastCallback.ts'; + import Transition from '../../ui/Transition'; import NewChatStep1 from './NewChatStep1'; import NewChatStep2 from './NewChatStep2'; @@ -27,7 +29,7 @@ const NewChat: FC = ({ content, onReset, }) => { - const { openLeftColumnContent } = getActions(); + const { openLeftColumnContent, setGlobalSearchQuery } = getActions(); const [newChatMemberIds, setNewChatMemberIds] = useState([]); const handleNextStep = useCallback(() => { @@ -36,6 +38,15 @@ const NewChat: FC = ({ }); }, [isChannel]); + const changeSelectedMemberIdsHandler = useLastCallback((ids: string[]) => { + const isSelection = ids.length > newChatMemberIds.length; + + setNewChatMemberIds(ids); + if (isSelection) { + setGlobalSearchQuery({ query: '' }); + } + }); + return ( = ({ isChannel={isChannel} isActive={isActive} selectedMemberIds={newChatMemberIds} - onSelectedMemberIdsChange={setNewChatMemberIds} + onSelectedMemberIdsChange={changeSelectedMemberIdsHandler} onNextStep={handleNextStep} onReset={onReset} />