@@ -899,8 +899,9 @@ class RecipientHeader extends StatelessWidget {
899899    final  message =  this .message;
900900    return  switch  (message) {
901901      StreamMessage () =>  StreamMessageRecipientHeader (message:  message,
902-         showStream:  _containsDifferentChannels (narrow)),
903-       DmMessage () =>  DmRecipientHeader (message:  message),
902+         showStream:  _containsDifferentChannels (narrow),
903+         inTopicNarrow:  narrow is  TopicNarrow ),
904+       DmMessage () =>  DmRecipientHeader (message:  message, inDmNarrow:  narrow is  DmNarrow ),
904905    };
905906  }
906907}
@@ -1015,10 +1016,12 @@ class StreamMessageRecipientHeader extends StatelessWidget {
10151016    super .key,
10161017    required  this .message,
10171018    required  this .showStream,
1019+     required  this .inTopicNarrow,
10181020  });
10191021
10201022  final  StreamMessage  message;
10211023  final  bool  showStream;
1024+   final  bool  inTopicNarrow;
10221025
10231026  @override 
10241027  Widget  build (BuildContext  context) {
@@ -1105,9 +1108,9 @@ class StreamMessageRecipientHeader extends StatelessWidget {
11051108        ]));
11061109
11071110    return  GestureDetector (
1108-       onTap:  () =>  Navigator .push (context,
1111+       onTap:  ! inTopicNarrow  ?   () =>  Navigator .push (context,
11091112        MessageListPage .buildRoute (context:  context,
1110-           narrow:  TopicNarrow .ofMessage (message))),
1113+           narrow:  TopicNarrow .ofMessage (message)))  :   null ,
11111114      onLongPress:  () =>  showTopicActionSheet (context,
11121115        channelId:  message.streamId, topic:  topic),
11131116      child:  ColoredBox (
@@ -1126,9 +1129,10 @@ class StreamMessageRecipientHeader extends StatelessWidget {
11261129}
11271130
11281131class  DmRecipientHeader  extends  StatelessWidget  {
1129-   const  DmRecipientHeader ({super .key, required  this .message});
1132+   const  DmRecipientHeader ({super .key, required  this .message,  required   this .inDmNarrow });
11301133
11311134  final  DmMessage  message;
1135+   final  bool  inDmNarrow;
11321136
11331137  @override 
11341138  Widget  build (BuildContext  context) {
@@ -1149,9 +1153,9 @@ class DmRecipientHeader extends StatelessWidget {
11491153    final  messageListTheme =  MessageListTheme .of (context);
11501154
11511155    return  GestureDetector (
1152-       onTap:  () =>  Navigator .push (context,
1156+       onTap:  ! inDmNarrow  ?   () =>  Navigator .push (context,
11531157        MessageListPage .buildRoute (context:  context,
1154-           narrow:  DmNarrow .ofMessage (message, selfUserId:  store.selfUserId))),
1158+           narrow:  DmNarrow .ofMessage (message, selfUserId:  store.selfUserId)))  :   null ,
11551159      child:  ColoredBox (
11561160        color:  messageListTheme.dmRecipientHeaderBg,
11571161        child:  Padding (
0 commit comments