Skip to content

Commit f492929

Browse files
committed
fix: dont show avatars for not bad encrypted messages
1 parent 4220965 commit f492929

File tree

1 file changed

+33
-22
lines changed

1 file changed

+33
-22
lines changed

lib/chat/view/events/chat_message_bubble.dart

Lines changed: 33 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -136,27 +136,6 @@ class _ChatMessageBubbleContent extends StatelessWidget {
136136
final messageStyle = textTheme.bodyMedium;
137137
final displayEvent = event.getDisplayEvent(timeline);
138138

139-
final hide = hideAvatar && event.messageType == MessageTypes.Text;
140-
141-
final Widget chatBubbleAvatar;
142-
if (hide) {
143-
chatBubbleAvatar = const SizedBox.shrink();
144-
} else {
145-
chatBubbleAvatar = event.messageType == MessageTypes.Text
146-
? ChatAvatar(
147-
avatarUri: event.senderFromMemoryOrFallback.avatarUrl,
148-
onTap: () => showDialog(
149-
context: context,
150-
builder: (context) => ChatProfileDialog(userId: event.senderId),
151-
),
152-
fallBackColor: getMonochromeBg(
153-
theme: context.theme,
154-
factor: 10,
155-
darkFactor: yaru ? 1 : null,
156-
),
157-
)
158-
: ChatMessageMediaAvatar(event: event);
159-
}
160139
return Material(
161140
color: Colors.transparent,
162141
child: Row(
@@ -166,7 +145,11 @@ class _ChatMessageBubbleContent extends StatelessWidget {
166145
children: [
167146
Padding(
168147
padding: const EdgeInsets.all(kSmallPadding),
169-
child: chatBubbleAvatar,
148+
child: hideAvatar && event.messageType == MessageTypes.Text
149+
? const SizedBox.shrink()
150+
: ChatMessageBubbleLeading(
151+
event: event,
152+
),
170153
),
171154
Flexible(
172155
child: Column(
@@ -232,3 +215,31 @@ class _ChatMessageBubbleContent extends StatelessWidget {
232215
);
233216
}
234217
}
218+
219+
class ChatMessageBubbleLeading extends StatelessWidget {
220+
const ChatMessageBubbleLeading({super.key, required this.event});
221+
222+
final Event event;
223+
224+
@override
225+
Widget build(BuildContext context) {
226+
if (event.messageType == MessageTypes.BadEncrypted) {
227+
return const SizedBox.shrink();
228+
} else if (event.messageType != MessageTypes.Text) {
229+
return ChatMessageMediaAvatar(event: event);
230+
}
231+
232+
return ChatAvatar(
233+
avatarUri: event.senderFromMemoryOrFallback.avatarUrl,
234+
onTap: () => showDialog(
235+
context: context,
236+
builder: (context) => ChatProfileDialog(userId: event.senderId),
237+
),
238+
fallBackColor: getMonochromeBg(
239+
theme: context.theme,
240+
factor: 10,
241+
darkFactor: yaru ? 1 : null,
242+
),
243+
);
244+
}
245+
}

0 commit comments

Comments
 (0)