diff --git a/lib/widgets/lazy_loading/message_avatar.dart b/lib/widgets/lazy_loading/message_avatar.dart index 215bb35..11c4704 100644 --- a/lib/widgets/lazy_loading/message_avatar.dart +++ b/lib/widgets/lazy_loading/message_avatar.dart @@ -1,7 +1,6 @@ import "package:flutter/material.dart"; import "package:flutter_riverpod/flutter_riverpod.dart"; import "package:nexus/controllers/author_controller.dart"; -import "package:nexus/helpers/extensions/better_when.dart"; import "package:nexus/helpers/extensions/get_localpart.dart"; import "package:nexus/helpers/extensions/show_user_popover.dart"; import "package:nexus/models/event.dart"; @@ -13,24 +12,22 @@ class MessageAvatar extends ConsumerWidget { const MessageAvatar(this.event, {this.height = 24, super.key}); @override - Widget build(BuildContext context, WidgetRef ref) => ref - .watch(AuthorController.provider(event)) - .betterWhen( - data: (membership) => InkWell( + Widget build(BuildContext context, WidgetRef ref) => + switch (ref.watch(AuthorController.provider(event))) { + AsyncData(:final value) || AsyncLoading(:final value?) => InkWell( onTapUp: (details) { context.showUserPopover( - membership, + value, event.sender, globalPosition: details.globalPosition, ); }, child: AvatarOrHash( - membership.avatarUrl, - membership.displayName ?? event.sender.localpart, + value.avatarUrl, + value.displayName ?? event.sender.localpart, height: height, ), ), - loading: () => - AvatarOrHash(null, event.sender.localpart, height: height), - ); + _ => AvatarOrHash(null, event.sender.localpart, height: height), + }; }