mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-04-30 21:26:57 +02:00
Lazy-loading server side: Use new async [MXRoom members:lazyLoadedMembers:]
This commit is contained in:
@@ -66,7 +66,8 @@
|
||||
|
||||
// Compute active members count
|
||||
MXWeakify(self);
|
||||
[self.mxRoom members:^(MXRoomMembers *roomMembers) {
|
||||
void (^onRoomMembers)(MXRoomMembers *roomMembers, BOOL allMembers) = ^void(MXRoomMembers *roomMembers, BOOL allMembers)
|
||||
{
|
||||
MXStrongifyAndReturnIfNil(self);
|
||||
|
||||
NSArray *members = [roomMembers membersWithMembership:MXMembershipJoin includeConferenceUser:NO];
|
||||
@@ -109,6 +110,14 @@
|
||||
// Should not happen
|
||||
self.roomMembers.text = nil;
|
||||
}
|
||||
};
|
||||
|
||||
[self.mxRoom members:^(MXRoomMembers *roomMembers) {
|
||||
onRoomMembers(roomMembers, YES);
|
||||
} lazyLoadedMembers:^(MXRoomMembers *lazyLoadedMembers) {
|
||||
onRoomMembers(lazyLoadedMembers, NO);
|
||||
} failure:^(NSError *error) {
|
||||
NSLog(@"[ExpandedRoomTitleView] refreshDisplay: Cannot get all room members");
|
||||
}];
|
||||
}
|
||||
else
|
||||
|
||||
@@ -183,7 +183,8 @@
|
||||
|
||||
// Compute active members count, and look for the inviter
|
||||
MXWeakify(self);
|
||||
[self.mxRoom members:^(MXRoomMembers *roomMembers) {
|
||||
void (^onRoomMembers)(MXRoomMembers *roomMembers, BOOL allMembers) = ^void(MXRoomMembers *roomMembers, BOOL allMembers)
|
||||
{
|
||||
MXStrongifyAndReturnIfNil(self);
|
||||
|
||||
NSArray *members = roomMembers.members;
|
||||
@@ -213,24 +214,32 @@
|
||||
|
||||
// FIXME: Display members status when it will be available
|
||||
self.roomMembers.text = nil;
|
||||
// if (memberCount)
|
||||
// {
|
||||
// if (activeCount > 1)
|
||||
// {
|
||||
// self.roomMembers.text = [NSString stringWithFormat:NSLocalizedStringFromTable(@"room_title_multiple_active_members", @"Vector", nil), @(activeCount), @(memberCount)];
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// self.roomMembers.text = [NSString stringWithFormat:NSLocalizedStringFromTable(@"room_title_one_active_member", @"Vector", nil), @(activeCount), @(memberCount)];
|
||||
// }
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// // Should not happen
|
||||
// self.roomMembers.text = nil;
|
||||
// }
|
||||
// if (memberCount)
|
||||
// {
|
||||
// if (activeCount > 1)
|
||||
// {
|
||||
// self.roomMembers.text = [NSString stringWithFormat:NSLocalizedStringFromTable(@"room_title_multiple_active_members", @"Vector", nil), @(activeCount), @(memberCount)];
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// self.roomMembers.text = [NSString stringWithFormat:NSLocalizedStringFromTable(@"room_title_one_active_member", @"Vector", nil), @(activeCount), @(memberCount)];
|
||||
// }
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// // Should not happen
|
||||
// self.roomMembers.text = nil;
|
||||
// }
|
||||
|
||||
self.previewLabel.text = [NSString stringWithFormat:NSLocalizedStringFromTable(@"room_preview_invitation_format", @"Vector", nil), inviter];
|
||||
};
|
||||
|
||||
[self.mxRoom members:^(MXRoomMembers *roomMembers) {
|
||||
onRoomMembers(roomMembers, YES);
|
||||
}lazyLoadedMembers:^(MXRoomMembers *lazyLoadedMembers) {
|
||||
onRoomMembers(lazyLoadedMembers, NO);
|
||||
} failure:^(NSError *error) {
|
||||
NSLog(@"[PreviewRoomTitleView] refreshDisplay: Cannot get all room members");
|
||||
}];
|
||||
}
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user