update subtitle status in conversation screen instantly

This commit is contained in:
ryanzhao 2021-07-26 16:16:14 +10:00
parent 0181b57f1a
commit b0e03f5dfd
3 changed files with 14 additions and 4 deletions

View File

@ -1001,13 +1001,11 @@ CGFloat kIconViewLength = 24;
UISwitch *uiSwitch = (UISwitch *)sender;
if (uiSwitch.isOn) {
[LKStorage writeWithBlock:^(YapDatabaseReadWriteTransaction *transaction) {
((TSGroupThread *)self.thread).isOnlyNotifyMentions = true;
[self.thread saveWithTransaction:transaction];
[(TSGroupThread *)self.thread setIsOnlyNotifyMentions:true withTransaction:transaction];
}];
} else {
[LKStorage writeWithBlock:^(YapDatabaseReadWriteTransaction *transaction) {
((TSGroupThread *)self.thread).isOnlyNotifyMentions = false;
[self.thread saveWithTransaction:transaction];
[(TSGroupThread *)self.thread setIsOnlyNotifyMentions:false withTransaction:transaction];
}];
}
}

View File

@ -45,6 +45,7 @@ extern NSString *const TSGroupThread_NotificationKey_UniqueId;
transaction:(YapDatabaseReadWriteTransaction *)transaction;
- (void)setGroupModel:(TSGroupModel *)newGroupModel withTransaction:(YapDatabaseReadWriteTransaction *)transaction;
- (void)setIsOnlyNotifyMentions:(BOOL)isOnlyNotifyMentions withTransaction:(YapDatabaseReadWriteTransaction *)transaction;
- (void)leaveGroupWithSneakyTransaction;
- (void)leaveGroupWithTransaction:(YapDatabaseReadWriteTransaction *)transaction;

View File

@ -208,6 +208,17 @@ NSString *const TSGroupThread_NotificationKey_UniqueId = @"TSGroupThread_Notific
}];
}
- (void)setIsOnlyNotifyMentions:(BOOL)isOnlyNotifyMentions withTransaction:(YapDatabaseReadWriteTransaction *)transaction
{
self.isOnlyNotifyMentions = isOnlyNotifyMentions;
[self saveWithTransaction:transaction];
[transaction addCompletionQueue:dispatch_get_main_queue() completionBlock:^{
[NSNotificationCenter.defaultCenter postNotificationName:NSNotification.groupThreadUpdated object:self.uniqueId];
}];
}
- (void)leaveGroupWithSneakyTransaction
{
[LKStorage writeSyncWithBlock:^(YapDatabaseReadWriteTransaction *_Nonnull transaction) {