fix group info

This commit is contained in:
Salvatore Giordano
2021-03-09 19:02:53 +01:00
parent a0f15c10b4
commit 0418e6db29
3 changed files with 79 additions and 63 deletions
+25 -10
View File
@@ -73,9 +73,11 @@ class _GroupInfoScreenState extends State<GroupInfoScreen> {
);
}
var userMember = snapshot.data
.firstWhere((e) => e.user.id == StreamChat.of(context).user.id);
var isOwner = userMember.role == 'owner';
var userMember = snapshot.data.firstWhere(
(e) => e.user.id == StreamChat.of(context).user.id,
orElse: () => null,
);
var isOwner = userMember?.role == 'owner';
return Scaffold(
backgroundColor: StreamChatTheme.of(context).colorTheme.whiteSnow,
@@ -192,9 +194,11 @@ class _GroupInfoScreenState extends State<GroupInfoScreen> {
return Material(
child: InkWell(
onTap: () {
var userMember = groupMembers.firstWhere(
(e) => e.user.id == StreamChat.of(context).user.id);
_showUserInfoModal(member.user, userMember.role == 'owner');
final userMember = groupMembers.firstWhere(
(e) => e.user.id == StreamChat.of(context).user.id,
orElse: () => null,
);
_showUserInfoModal(member.user, userMember?.role == 'owner');
},
child: Container(
height: 65.0,
@@ -586,10 +590,21 @@ class _GroupInfoScreenState extends State<GroupInfoScreen> {
width: 24.0,
),
onTap: () async {
await channel.channel
.removeMembers([StreamChat.of(context).user.id]);
Navigator.pop(context);
Navigator.pop(context);
final res = await showConfirmationDialog(
context,
title: 'Leave conversation',
okText: 'LEAVE',
question: 'Are you sure you want to leave this conversation?',
cancelText: 'CANCEL',
icon: StreamSvgIcon.userRemove(
color: StreamChatTheme.of(context).colorTheme.accentRed,
),
);
if (res == true) {
final channel = StreamChannel.of(context).channel;
await channel.removeMembers([StreamChat.of(context).user.id]);
Navigator.pop(context);
}
},
),
],
+1
View File
@@ -719,6 +719,7 @@ class _ChannelListPageState extends State<ChannelListPage> {
),
channelWidget: ChannelPage(),
onViewInfoTap: (channel) {
Navigator.pop(context);
if (channel.memberCount == 2 && channel.isDistinct) {
Navigator.push(
context,