From 713c74c11f931d8ed244878dd0f71a95cb041cbe Mon Sep 17 00:00:00 2001 From: adz Date: Mon, 15 Apr 2024 11:23:12 +0200 Subject: [PATCH] Update outdated chatStore logic after rebase --- .../components/message/MessageList.tsx | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/renderer/components/message/MessageList.tsx b/src/renderer/components/message/MessageList.tsx index 6d8bd275e9..5f6e85e90c 100644 --- a/src/renderer/components/message/MessageList.tsx +++ b/src/renderer/components/message/MessageList.tsx @@ -8,8 +8,9 @@ import React, { useMemo, } from 'react' import classNames from 'classnames' -import { C, T } from '@deltachat/jsonrpc-client' import moment from 'moment' +import { C } from '@deltachat/jsonrpc-client' +import { debounce } from 'debounce' import { MessageWrapper } from './MessageWrapper' import { getLogger } from '../../../shared/logger' @@ -20,12 +21,14 @@ import { debouncedUpdateBadgeCounter } from '../../system-integration/badge-coun import { MessagesDisplayContext } from '../../contexts/MessagesDisplayContext' import useTranslationFunction from '../../hooks/useTranslationFunction' import useKeyBindingAction from '../../hooks/useKeyBindingAction' +import useHasChanged from '../../hooks/useHasChanged' import { useReactionsBar } from '../ReactionsBar' import EmptyChatMessage from './EmptyChatMessage' -import { debounce } from 'debounce' const log = getLogger('render/components/message/MessageList') +import type { T } from '@deltachat/jsonrpc-client' + type ChatTypes = | C.DC_CHAT_TYPE_SINGLE | C.DC_CHAT_TYPE_GROUP @@ -544,12 +547,13 @@ export const MessageListInner = React.memo( onScroll(...args) } - const [prevChatStore, setPrevChatStore] = useState(chatStore) + const hasChatChanged = useHasChanged(chat) const [switchedChatAt, setSwitchedChatAt] = useState(0) - if (chatStore !== prevChatStore) { - setPrevChatStore(chatStore) - setSwitchedChatAt(Date.now()) - } + useEffect(() => { + if (hasChatChanged) { + setSwitchedChatAt(Date.now()) + } + }, [hasChatChanged]) if (!loaded) { return (