show senders for both messages and stickers in reply previews
This commit is contained in:
parent
7baf56adef
commit
45b3ec10bf
1 changed files with 33 additions and 26 deletions
|
|
@ -1,5 +1,6 @@
|
|||
import "package:material_ui/material_ui.dart";
|
||||
import "package:nexus/models/content/message.dart";
|
||||
import "package:nexus/models/content/sticker.dart";
|
||||
import "package:nexus/models/event.dart";
|
||||
import "package:nexus/widgets/lazy_loading/message_avatar.dart";
|
||||
import "package:nexus/widgets/lazy_loading/message_displayname.dart";
|
||||
|
|
@ -8,33 +9,39 @@ import "package:nexus/widgets/renderers/event.dart";
|
|||
class const EventPreview(final Event event, {super.key})
|
||||
extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) => IgnorePointer(
|
||||
child: Padding(
|
||||
padding: .symmetric(vertical: 4),
|
||||
child: Row(
|
||||
mainAxisSize: .min,
|
||||
spacing: 8,
|
||||
children: [
|
||||
if (event.content is MessageContent) MessageAvatar(event, height: 36),
|
||||
Widget build(BuildContext context) {
|
||||
final showSender = switch (event.content) {
|
||||
MessageContent() || StickerContent() => true,
|
||||
_ => false,
|
||||
};
|
||||
|
||||
Flexible(
|
||||
child: Column(
|
||||
mainAxisAlignment: .center,
|
||||
crossAxisAlignment: .start,
|
||||
children: [
|
||||
if (event.content is MessageContent)
|
||||
MessageDisplayname(event, shouldWrap: false),
|
||||
EventRenderer(
|
||||
event.rowId,
|
||||
roomId: event.roomId,
|
||||
textOnly: true,
|
||||
maxLines: 1,
|
||||
),
|
||||
],
|
||||
return IgnorePointer(
|
||||
child: Padding(
|
||||
padding: .symmetric(vertical: 4),
|
||||
child: Row(
|
||||
mainAxisSize: .min,
|
||||
spacing: 8,
|
||||
children: [
|
||||
if (showSender) MessageAvatar(event, height: 36),
|
||||
|
||||
Flexible(
|
||||
child: Column(
|
||||
mainAxisAlignment: .center,
|
||||
crossAxisAlignment: .start,
|
||||
children: [
|
||||
if (showSender) MessageDisplayname(event, shouldWrap: false),
|
||||
EventRenderer(
|
||||
event.rowId,
|
||||
roomId: event.roomId,
|
||||
textOnly: true,
|
||||
maxLines: 1,
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue