diff options
author | Iván Ávalos <avalos@disroot.org> | 2023-05-22 23:16:49 -0600 |
---|---|---|
committer | Iván Ávalos <avalos@disroot.org> | 2023-05-22 23:16:49 -0600 |
commit | d0d54a9d6e7ac947ae86962b6bbc7eeb9ada5011 (patch) | |
tree | 620d6ce0d79118489e9515885e0ce7f651f4dbb8 /lib/widgets | |
parent | 79bdf9cac504d35cf3cf671232b28b5b5ac03f12 (diff) | |
download | linkchat-d0d54a9d6e7ac947ae86962b6bbc7eeb9ada5011.tar.gz linkchat-d0d54a9d6e7ac947ae86962b6bbc7eeb9ada5011.tar.bz2 linkchat-d0d54a9d6e7ac947ae86962b6bbc7eeb9ada5011.zip |
Se implementa caché para ávatars
Diffstat (limited to 'lib/widgets')
-rw-r--r-- | lib/widgets/cached_avatar.dart | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/lib/widgets/cached_avatar.dart b/lib/widgets/cached_avatar.dart new file mode 100644 index 0000000..e6fcf89 --- /dev/null +++ b/lib/widgets/cached_avatar.dart @@ -0,0 +1,22 @@ +import 'package:cached_network_image/cached_network_image.dart'; +import 'package:flutter/material.dart'; + +class CachedAvatar extends StatelessWidget { + final String? avatarUrl; + const CachedAvatar(this.avatarUrl, {super.key}); + + @override + Widget build(BuildContext context) { + return CircleAvatar( + backgroundImage: + avatarUrl != null ? CachedNetworkImageProvider(avatarUrl!) : null, + backgroundColor: Theme.of(context).colorScheme.primary, + child: avatarUrl == null + ? Icon( + Icons.person, + color: Theme.of(context).colorScheme.onPrimary, + ) + : null, + ); + } +} |