Composer: Fix recording not stopped when closing chat on mobile
This commit is contained in:
parent
6cc4a94407
commit
195a38b88d
@ -424,16 +424,15 @@ const Composer: FC<OwnProps & StateProps & DispatchProps> = ({
|
|||||||
}
|
}
|
||||||
}, [closeStickerTooltip, closeCalendar, closeMentionTooltip, closeEmojiTooltip, closeSymbolMenu]);
|
}, [closeStickerTooltip, closeCalendar, closeMentionTooltip, closeEmojiTooltip, closeSymbolMenu]);
|
||||||
|
|
||||||
// Handle chat change
|
// Handle chat change (ref is used to avoid redundant effect calls)
|
||||||
const prevChatId = usePrevious(chatId);
|
const stopRecordingVoiceRef = useRef<typeof stopRecordingVoice>();
|
||||||
|
stopRecordingVoiceRef.current = stopRecordingVoice;
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (!prevChatId || chatId === prevChatId) {
|
return () => {
|
||||||
return;
|
stopRecordingVoiceRef.current!();
|
||||||
}
|
resetComposer();
|
||||||
|
};
|
||||||
stopRecordingVoice();
|
}, [chatId, resetComposer, stopRecordingVoiceRef]);
|
||||||
resetComposer();
|
|
||||||
}, [chatId, prevChatId, resetComposer, stopRecordingVoice]);
|
|
||||||
|
|
||||||
const handleEditComplete = useEditing(htmlRef, setHtml, editingMessage, resetComposer, openDeleteModal, editMessage);
|
const handleEditComplete = useEditing(htmlRef, setHtml, editingMessage, resetComposer, openDeleteModal, editMessage);
|
||||||
useDraft(draft, chatId, threadId, html, htmlRef, setHtml, editingMessage, saveDraft, clearDraft);
|
useDraft(draft, chatId, threadId, html, htmlRef, setHtml, editingMessage, saveDraft, clearDraft);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user