diff --git a/SessionMessagingKit/Threads/TSGroupThread.h b/SessionMessagingKit/Threads/TSGroupThread.h index 659ddd897..297ab5504 100644 --- a/SessionMessagingKit/Threads/TSGroupThread.h +++ b/SessionMessagingKit/Threads/TSGroupThread.h @@ -18,6 +18,7 @@ extern NSString *const TSGroupThread_NotificationKey_UniqueId; @property (nonatomic, strong) TSGroupModel *groupModel; @property (nonatomic, readonly) BOOL isOpenGroup; @property (nonatomic, readonly) BOOL isClosedGroup; +@property (nonatomic) BOOL isOnlyNotifyMentions; + (instancetype)getOrCreateThreadWithGroupModel:(TSGroupModel *)groupModel; + (instancetype)getOrCreateThreadWithGroupModel:(TSGroupModel *)groupModel diff --git a/SignalUtilitiesKit/Messaging/ThreadViewModel.swift b/SignalUtilitiesKit/Messaging/ThreadViewModel.swift index 98bbf91d5..6b1f0ef60 100644 --- a/SignalUtilitiesKit/Messaging/ThreadViewModel.swift +++ b/SignalUtilitiesKit/Messaging/ThreadViewModel.swift @@ -14,6 +14,7 @@ public class ThreadViewModel: NSObject { @objc public let contactSessionID: String? @objc public let name: String @objc public let isMuted: Bool + @objc public let isOnlyNotifyMentions: Bool var isContactThread: Bool { return !isGroupThread @@ -39,6 +40,12 @@ public class ThreadViewModel: NSObject { } else { self.contactSessionID = nil } + + if let groupThread = thread as? TSGroupThread { + self.isOnlyNotifyMentions = groupThread.isOnlyNotifyMentions + } else { + self.isOnlyNotifyMentions = false + } self.unreadCount = thread.unreadMessageCount(transaction: transaction) self.hasUnreadMessages = unreadCount > 0