dmAvatar method
dynamic
dmAvatar( - dynamic ref,
- dynamic context
)
Implementation
Widget dmAvatar(WidgetRef ref, BuildContext context) {
final client = ref.watch(alwaysClientProvider);
final membersLoader = ref.watch(membersIdsProvider(roomId));
return membersLoader.when(
data: (members) {
int count = members.length;
//Show member avatar
if (count == 1) {
return memberAvatar(members[0], ref);
} else if (count == 2) {
//Show opponent member avatar
if (members[0] != client.userId().toString()) {
return memberAvatar(members[0], ref);
} else {
return memberAvatar(members[1], ref);
}
}
//Show multiple member avatars
else {
return groupAvatarDM(members, ref);
}
},
skipLoadingOnReload: false,
error: (e, s) {
_log.severe('Failed to load room members', e, s);
return errorAvatar(L10n.of(context).loadingMembersCountFailed(e));
},
loading: () => loadingAvatar(),
);
}