Support for pinned messages #49

Merged
Henry-Hiles merged 24 commits from istalri/nexus:support_pinned_messages into main 2026-07-14 19:29:47 -04:00
2 changed files with 18 additions and 9 deletions
Showing only changes of commit 4c94977b90 - Show all commits

handle redacted messages more gracefully

Henry Hiles 2026-07-14 23:29:20 +00:00
Signed by: Henry-Hiles
SSH key fingerprint: SHA256:VKQUdS31Q90KvX7EkKMHMBpUspcmItAh86a+v7PGiIs

View file

@ -10,7 +10,7 @@ part "message.g.dart";
@Freezed(unionKey: "msgtype", fallbackUnion: "default") @Freezed(unionKey: "msgtype", fallbackUnion: "default")
abstract class MessageContent extends Content with _$MessageContent { abstract class MessageContent extends Content with _$MessageContent {
MessageContent._(); MessageContent._();
factory MessageContent({required String body}) = UnknownMessageContent; factory MessageContent({String? body}) = UnknownMessageContent;
@FreezedUnionValue("m.text") @FreezedUnionValue("m.text")
factory MessageContent.text({ factory MessageContent.text({

View file

@ -276,11 +276,20 @@ class MessageRenderer extends ConsumerWidget {
], ],
], ],
), ),
MessageContent(:final body) => Row( MessageContent(:final body) =>
body == null
? Text(
"This message is redacted",
style: errorStyle,
)
: Row(
spacing: 8, spacing: 8,
mainAxisSize: .min, mainAxisSize: .min,
children: [ children: [
Text("Unknown message type:", style: errorStyle), Text(
"Unknown message type:",
style: errorStyle,
),
Text(body), Text(body),
], ],
), ),