Make group updates not mark a thread as unread.

This commit is contained in:
Cody Henthorne
2022-10-11 15:13:17 -04:00
parent 3d8f62ce9d
commit 55d437e54b
3 changed files with 5 additions and 6 deletions

View File

@@ -1841,6 +1841,8 @@ public class MmsDatabase extends MessageDatabase {
ContentValues contentValues = new ContentValues();
boolean silentUpdate = (mailbox & Types.GROUP_UPDATE_BIT) > 0;
contentValues.put(DATE_SENT, retrieved.getSentTimeMillis());
contentValues.put(DATE_SERVER, retrieved.getServerTimeMillis());
contentValues.put(RECIPIENT_ID, retrieved.getFrom().serialize());
@@ -1857,7 +1859,7 @@ public class MmsDatabase extends MessageDatabase {
contentValues.put(VIEW_ONCE, retrieved.isViewOnce() ? 1 : 0);
contentValues.put(STORY_TYPE, retrieved.getStoryType().getCode());
contentValues.put(PARENT_STORY_ID, retrieved.getParentStoryId() != null ? retrieved.getParentStoryId().serialize() : 0);
contentValues.put(READ, retrieved.isExpirationUpdate() ? 1 : 0);
contentValues.put(READ, (silentUpdate || retrieved.isExpirationUpdate()) ? 1 : 0);
contentValues.put(UNIDENTIFIED, retrieved.isUnidentified());
contentValues.put(SERVER_GUID, retrieved.getServerGuid());

View File

@@ -1193,7 +1193,8 @@ public class SmsDatabase extends MessageDatabase {
boolean silent = message.isIdentityUpdate() ||
message.isIdentityVerified() ||
message.isIdentityDefault() ||
message.isJustAGroupLeave();
message.isJustAGroupLeave() ||
(type & Types.GROUP_UPDATE_BIT) > 0;
boolean unread = !silent && (Util.isDefaultSmsProvider(context) ||
message.isSecureMessage() ||

View File

@@ -13,10 +13,6 @@ public final class IncomingGroupUpdateMessage extends IncomingTextMessage {
private final MessageGroupContext groupContext;
public IncomingGroupUpdateMessage(IncomingTextMessage base, GroupContext groupContext, String body) {
this(base, new MessageGroupContext(groupContext));
}
public IncomingGroupUpdateMessage(IncomingTextMessage base, DecryptedGroupV2Context groupV2Context) {
this(base, new MessageGroupContext(groupV2Context));
}