Marking conversation as read if received a sync message from same users other device.

pull/1966/head
Warrick Corfe-Tan 4 years ago
parent af12e2c288
commit 3c7c3220a1

@ -9,7 +9,11 @@ import { getConversationController } from '../session/conversations';
import { ConversationModel, ConversationTypeEnum } from '../models/conversation';
import { MessageModel } from '../models/message';
import { getMessageById, getMessagesBySentAt } from '../../ts/data/data';
import { MessageModelPropsWithoutConvoProps, messagesAdded } from '../state/ducks/conversations';
import {
markConversationFullyRead,
MessageModelPropsWithoutConvoProps,
messagesAdded,
} from '../state/ducks/conversations';
import { updateProfileOneAtATime } from './dataMessage';
import Long from 'long';
@ -245,6 +249,14 @@ function handleSyncedReceipts(message: MessageModel, conversation: ConversationM
}
message.set({ recipients });
// If the newly received message is from us, we assume that we've seen the messages up until that point
const receivedTimestamp = message.get('received_at');
if (receivedTimestamp) {
conversation.markReadBouncy(receivedTimestamp).then(() => {
window?.inboxStore?.dispatch(markConversationFullyRead(conversation.id));
});
}
}
async function handleRegularMessage(

Loading…
Cancel
Save