mirror of
https://github.com/signalapp/Signal-Desktop.git
synced 2026-04-02 00:07:56 +01:00
Mark accepted or outgoing callHistory as seen
This commit is contained in:
@@ -2174,7 +2174,7 @@ export class BackupExportStream extends Readable {
|
||||
callHistory.endedTimestamp
|
||||
);
|
||||
}
|
||||
const read = message.seenStatus === SeenStatus.Seen;
|
||||
const read = message.seenStatus !== SeenStatus.Unseen;
|
||||
|
||||
updateMessage.update = {
|
||||
groupCall: {
|
||||
@@ -2212,7 +2212,7 @@ export class BackupExportStream extends Readable {
|
||||
direction: toIndividualCallDirectionProto(direction),
|
||||
state: toIndividualCallStateProto(status, direction),
|
||||
startedCallTimestamp: BigInt(timestamp),
|
||||
read: message.seenStatus === SeenStatus.Seen,
|
||||
read: message.seenStatus !== SeenStatus.Unseen,
|
||||
},
|
||||
};
|
||||
return { kind: NonBubbleResultKind.Directionless, patch };
|
||||
|
||||
@@ -1219,21 +1219,27 @@ async function saveCallHistory({
|
||||
return callHistory;
|
||||
}
|
||||
|
||||
let unseen = false;
|
||||
if (callHistory.mode === CallMode.Direct) {
|
||||
unseen =
|
||||
callHistory.direction === CallDirection.Incoming &&
|
||||
(callHistory.status === DirectCallStatus.Missed ||
|
||||
callHistory.status === DirectCallStatus.Pending);
|
||||
} else if (callHistory.mode === CallMode.Group) {
|
||||
unseen =
|
||||
callHistory.direction === CallDirection.Incoming &&
|
||||
(callHistory.status === GroupCallStatus.Ringing ||
|
||||
callHistory.status === GroupCallStatus.GenericGroupCall ||
|
||||
callHistory.status === GroupCallStatus.Missed);
|
||||
let seenStatus: SeenStatus;
|
||||
|
||||
const isUnseenDirectCall =
|
||||
callHistory.mode === CallMode.Direct &&
|
||||
callHistory.direction === CallDirection.Incoming &&
|
||||
(callHistory.status === DirectCallStatus.Missed ||
|
||||
callHistory.status === DirectCallStatus.Pending);
|
||||
|
||||
const isUnseenGroupCall =
|
||||
callHistory.mode === CallMode.Group &&
|
||||
callHistory.direction === CallDirection.Incoming &&
|
||||
(callHistory.status === GroupCallStatus.Ringing ||
|
||||
callHistory.status === GroupCallStatus.GenericGroupCall ||
|
||||
callHistory.status === GroupCallStatus.Missed);
|
||||
|
||||
if (isUnseenDirectCall || isUnseenGroupCall) {
|
||||
seenStatus = SeenStatus.Unseen;
|
||||
} else {
|
||||
seenStatus = SeenStatus.Seen;
|
||||
}
|
||||
|
||||
let seenStatus = unseen ? SeenStatus.Unseen : SeenStatus.NotApplicable;
|
||||
if (prevMessage?.seenStatus != null) {
|
||||
seenStatus = maxSeenStatus(seenStatus, prevMessage.seenStatus);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user