@@ -63,6 +63,7 @@ class _MessageListPageState extends State<MessageListPage> {
63
63
bool removeAppBarBottomBorder = false ;
64
64
switch (widget.narrow) {
65
65
case CombinedFeedNarrow ():
66
+ case MentionsNarrow ():
66
67
appBarBackgroundColor = null ; // i.e., inherit
67
68
68
69
case StreamNarrow (: final streamId):
@@ -149,6 +150,8 @@ class MessageListAppBarTitle extends StatelessWidget {
149
150
switch (narrow) {
150
151
case CombinedFeedNarrow ():
151
152
return Text (zulipLocalizations.combinedFeedPageTitle);
153
+ case MentionsNarrow ():
154
+ return Text (zulipLocalizations.mentionsPageTitle);
152
155
153
156
case StreamNarrow (: var streamId):
154
157
final store = PerAccountStoreWidget .of (context);
@@ -340,7 +343,7 @@ class _MessageListState extends State<MessageList> with PerAccountStoreAwareStat
340
343
return _buildItem (data, i);
341
344
}));
342
345
343
- if (widget.narrow is CombinedFeedNarrow ) {
346
+ if (widget.narrow is CombinedFeedNarrow || widget.narrow is MentionsNarrow ) {
344
347
// TODO(#311) If we have a bottom nav, it will pad the bottom
345
348
// inset, and this shouldn't be necessary
346
349
sliver = SliverSafeArea (sliver: sliver);
@@ -521,7 +524,7 @@ class RecipientHeader extends StatelessWidget {
521
524
final message = this .message;
522
525
return switch (message) {
523
526
StreamMessage () => StreamMessageRecipientHeader (message: message,
524
- showStream: narrow is CombinedFeedNarrow ),
527
+ showStream: narrow is CombinedFeedNarrow || narrow is MentionsNarrow ),
525
528
DmMessage () => DmRecipientHeader (message: message),
526
529
};
527
530
}
@@ -1097,6 +1100,13 @@ Future<void> _legacyMarkNarrowAsRead(BuildContext context, Narrow narrow) async
1097
1100
switch (narrow) {
1098
1101
case CombinedFeedNarrow ():
1099
1102
await markAllAsRead (connection);
1103
+ case MentionsNarrow ():
1104
+ final unreadMentions = store.unreads.mentions.toList ();
1105
+ if (unreadMentions.isEmpty) return ;
1106
+ await updateMessageFlags (connection,
1107
+ messages: unreadMentions,
1108
+ op: UpdateMessageFlagsOp .add,
1109
+ flag: MessageFlag .read);
1100
1110
case StreamNarrow (: final streamId):
1101
1111
await markStreamAsRead (connection, streamId: streamId);
1102
1112
case TopicNarrow (: final streamId, : final topic):
0 commit comments