chore: Fetch cached presence

This commit is contained in:
Krille 2023-11-27 13:23:37 +01:00
parent 61ade15fa9
commit ee599c1f52
No known key found for this signature in database

View file

@ -22,12 +22,15 @@ class PresenceBuilder extends StatelessWidget {
if (userId == null) return builder(context, null); if (userId == null) return builder(context, null);
final client = this.client ?? Matrix.of(context).client; final client = this.client ?? Matrix.of(context).client;
return StreamBuilder( return FutureBuilder<CachedPresence>(
stream: client.onPresenceChanged.stream future: client.fetchCurrentPresence(userId),
.where((cachedPresence) => cachedPresence.userid == userId), builder: (context, cachedPresenceSnapshot) => StreamBuilder(
builder: (context, snapshot) => builder( stream: client.onPresenceChanged.stream
context, .where((cachedPresence) => cachedPresence.userid == userId),
snapshot.data ?? client.presences[userId], builder: (context, snapshot) => builder(
context,
snapshot.data ?? cachedPresenceSnapshot.data,
),
), ),
); );
} }