Message: Fix ungrouping on reaction (#6243)

This commit is contained in:
zubiden 2025-09-19 14:35:10 +02:00 committed by Alexander Zinchuk
parent ba80452ac1
commit eb7dff433c

View File

@ -50,7 +50,7 @@ import { interpolateArray } from '../../../util/waveform';
import { import {
buildApiCurrencyAmount, buildApiCurrencyAmount,
} from '../apiBuilders/payments'; } from '../apiBuilders/payments';
import { buildPeer } from '../gramjsBuilders'; import { buildPeer, getEntityTypeById } from '../gramjsBuilders';
import { import {
addDocumentToLocalDb, addDocumentToLocalDb,
addPhotoToLocalDb, addPhotoToLocalDb,
@ -187,7 +187,11 @@ export function buildApiMessageWithChatId(
chatId: string, chatId: string,
mtpMessage: UniversalMessage, mtpMessage: UniversalMessage,
): ApiMessage { ): ApiMessage {
const fromId = mtpMessage.fromId ? getApiChatIdFromMtpPeer(mtpMessage.fromId) : undefined; const isPrivateChat = getEntityTypeById(chatId) === 'user';
// Server can return `fromId` for our own messages in private chats, but not for incoming ones
// This can break grouping logic, as we do not fill `fromId` for `UpdateShortMessage` case
const fromId = mtpMessage.fromId && !isPrivateChat
? getApiChatIdFromMtpPeer(mtpMessage.fromId) : undefined;
const isChatWithSelf = !fromId && chatId === currentUserId; const isChatWithSelf = !fromId && chatId === currentUserId;
const forwardInfo = mtpMessage.fwdFrom && buildApiMessageForwardInfo(mtpMessage.fwdFrom, isChatWithSelf); const forwardInfo = mtpMessage.fwdFrom && buildApiMessageForwardInfo(mtpMessage.fwdFrom, isChatWithSelf);