diff --git a/src/components/middle/MiddleColumn.tsx b/src/components/middle/MiddleColumn.tsx index f323dba4a..a683fc4a6 100644 --- a/src/components/middle/MiddleColumn.tsx +++ b/src/components/middle/MiddleColumn.tsx @@ -45,7 +45,8 @@ import { selectReplyingToId, selectTabState, selectTheme, - selectThreadInfo, selectThreadTopMessageId, + selectThreadInfo, + selectThreadTopMessageId, } from '../../global/selectors'; import { getCanPostInChat, diff --git a/src/global/actions/api/messages.ts b/src/global/actions/api/messages.ts index ccbd8db1b..c0c06cc3f 100644 --- a/src/global/actions/api/messages.ts +++ b/src/global/actions/api/messages.ts @@ -68,7 +68,8 @@ import { selectDraft, selectEditingId, selectEditingMessage, - selectEditingScheduledId, selectFirstMessageId, + selectEditingScheduledId, + selectFirstMessageId, selectFirstUnreadId, selectFocusedMessageId, selectForwardsCanBeSentToChat, @@ -1020,11 +1021,12 @@ async function loadViewportMessages( const allMessages = ([] as ApiMessage[]).concat(messages, localMessages); const byId = buildCollectionByKey(allMessages, 'id'); const ids = Object.keys(byId).map(Number); - const threadFirstMessageId = selectFirstMessageId(global, chatId, threadId) || {}; - if (threadId - && threadFirstMessageId !== threadId - && (!ids[0] || threadFirstMessageId === ids[0])) { - ids.unshift(threadId); + + if (threadId !== MAIN_THREAD_ID) { + const threadFirstMessageId = selectFirstMessageId(global, chatId, threadId) || {}; + if ((!ids[0] || threadFirstMessageId === ids[0]) && threadFirstMessageId !== threadId) { + ids.unshift(threadId); + } } global = addChatMessagesById(global, chatId, byId);