Stupid Profile cache

This commit is contained in:
Christian Pauly 2020-05-06 19:03:57 +02:00
commit 10eaf1ffc5
2 changed files with 27 additions and 22 deletions

View file

@ -13,14 +13,12 @@ class PresenceListItem extends StatelessWidget {
const PresenceListItem(this.presence);
static Map<String, Profile> _presences = {};
Future<Profile> _requestProfile(BuildContext context) async {
if (presence.avatarUrl != null) {
return Profile.fromJson({
'avatar_url': presence.avatarUrl.toString(),
'displayname': presence.displayname ?? presence.sender.localpart,
});
}
return Matrix.of(context).client.getProfileFromUserId(presence.sender);
_presences[presence.sender] ??=
await Matrix.of(context).client.getProfileFromUserId(presence.sender);
return _presences[presence.sender];
}
@override