Convert notifications control to use user icon

This commit is contained in:
Hank Grabowski 2022-12-27 11:08:16 -05:00
parent a2c2cc9270
commit 65c14b1e3a

View file

@ -1,3 +1,4 @@
import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
import 'package:flutter_widget_from_html_core/flutter_widget_from_html_core.dart';
import 'package:go_router/go_router.dart';
@ -6,6 +7,7 @@ import 'package:provider/provider.dart';
import '../globals.dart';
import '../models/user_notification.dart';
import '../routes.dart';
import '../services/connections_manager.dart';
import '../services/notifications_manager.dart';
import '../services/timeline_manager.dart';
import '../utils/dateutils.dart';
@ -37,7 +39,20 @@ class NotificationControl extends StatelessWidget {
@override
Widget build(BuildContext context) {
const iconSize = 50.0;
final manager = context.watch<NotificationsManager>();
final fromIcon =
getIt<ConnectionsManager>().getById(notification.fromId).fold(
onSuccess: (connection) => CachedNetworkImage(
imageUrl: connection.avatarUrl.toString(),
width: iconSize,
height: iconSize),
onError: (error) => const SizedBox(
width: iconSize,
height: iconSize,
child: Icon(Icons.question_mark),
),
);
if (notification.type == NotificationType.reblog) {
print(notification);
}
@ -48,7 +63,7 @@ class NotificationControl extends StatelessWidget {
context.pushNamed(ScreenPaths.userProfile,
params: {'id': notification.fromId});
},
child: Text(notification.fromName),
child: fromIcon,
),
title: GestureDetector(
onTap: () async {