From ed2a3f17d8abc5b3b5e0bc6fe6b2df4afb33a764 Mon Sep 17 00:00:00 2001 From: Deven Joshi Date: Wed, 1 Sep 2021 15:15:21 +0530 Subject: [PATCH] removed clipping from user avatar --- packages/stream_chat_flutter/CHANGELOG.md | 1 + .../lib/src/user_avatar.dart | 46 +++++++++++-------- 2 files changed, 27 insertions(+), 20 deletions(-) diff --git a/packages/stream_chat_flutter/CHANGELOG.md b/packages/stream_chat_flutter/CHANGELOG.md index 91ad7f1d..b7a37acb 100644 --- a/packages/stream_chat_flutter/CHANGELOG.md +++ b/packages/stream_chat_flutter/CHANGELOG.md @@ -46,6 +46,7 @@ breakdown: * `UserListViewTheme` is now `UserListViewThemeData` - Updated core dependency. +- `UserAvatar` no longer uses a clipper by default. 🐞 Fixed diff --git a/packages/stream_chat_flutter/lib/src/user_avatar.dart b/packages/stream_chat_flutter/lib/src/user_avatar.dart index 6a5ef0de..47c50b95 100644 --- a/packages/stream_chat_flutter/lib/src/user_avatar.dart +++ b/packages/stream_chat_flutter/lib/src/user_avatar.dart @@ -68,26 +68,32 @@ class UserAvatar extends StatelessWidget { Widget avatar = FittedBox( fit: BoxFit.cover, - child: ClipRRect( - borderRadius: borderRadius ?? - streamChatTheme.ownMessageTheme.avatarTheme?.borderRadius, - child: Container( - constraints: constraints ?? - streamChatTheme.ownMessageTheme.avatarTheme?.constraints, - child: hasImage - ? CachedNetworkImage( - fit: BoxFit.cover, - filterQuality: FilterQuality.high, - imageUrl: user.image!, - errorWidget: (context, __, ___) => - streamChatTheme.defaultUserImage(context, user), - placeholder: placeholder != null - ? (context, __) => placeholder(context, user) - : null, - ) - : streamChatTheme.defaultUserImage(context, user), - ), - ), + child: hasImage + ? CachedNetworkImage( + fit: BoxFit.cover, + filterQuality: FilterQuality.high, + imageUrl: user.image!, + imageBuilder: (context, imageProvider) => Container( + constraints: constraints ?? + streamChatTheme.ownMessageTheme.avatarTheme?.constraints, + decoration: BoxDecoration( + borderRadius: borderRadius ?? + streamChatTheme.ownMessageTheme.avatarTheme?.borderRadius, + image: + DecorationImage(image: imageProvider, fit: BoxFit.cover), + ), + ), + errorWidget: (context, __, ___) => + streamChatTheme.defaultUserImage(context, user), + placeholder: placeholder != null + ? (context, __) => placeholder(context, user) + : null, + ) + : ClipRRect( + borderRadius: borderRadius ?? + streamChatTheme.ownMessageTheme.avatarTheme?.borderRadius, + child: streamChatTheme.defaultUserImage(context, user), + ), ); if (selected) {