@@ -1133,6 +1133,11 @@ def keypress(self, size: urwid_Size, key: str) -> Optional[str]:
1133
1133
stream_id = self .stream_id ,
1134
1134
)
1135
1135
elif is_command_key ('STREAM_MESSAGE' , key ):
1136
+ if (self .model .is_user_in_unsubscribed_stream (self .stream_id )):
1137
+ self .model .controller .view .set_footer_text (
1138
+ " You can't write messages to unsubscribed streams." ,
1139
+ 3 )
1140
+ return None
1136
1141
if self .message ['type' ] == 'private' :
1137
1142
self .model .controller .view .write_box .private_box_view (
1138
1143
email = self .recipients_emails ,
@@ -1177,13 +1182,18 @@ def keypress(self, size: urwid_Size, key: str) -> Optional[str]:
1177
1182
recipient_user_ids = [self .message ['sender_id' ]],
1178
1183
)
1179
1184
elif is_command_key ('MENTION_REPLY' , key ):
1180
- self .keypress (size , 'enter' )
1181
- mention = '@**' + self .message ['sender_full_name' ] + '** '
1182
- self .model .controller .view .write_box .msg_write_box .set_edit_text (
1183
- mention )
1184
- self .model .controller .view .write_box .msg_write_box .set_edit_pos (
1185
- len (mention ))
1186
- self .model .controller .view .middle_column .set_focus ('footer' )
1185
+ if (not self .model .is_user_in_unsubscribed_stream (self .stream_id )):
1186
+ self .keypress (size , 'enter' )
1187
+ mention = '@**' + self .message ['sender_full_name' ] + '** '
1188
+ write_box = self .model .controller .view .write_box .msg_write_box
1189
+ write_box .set_edit_text (mention )
1190
+ write_box .set_edit_pos (len (mention ))
1191
+ self .model .controller .view .middle_column .set_focus ('footer' )
1192
+ else :
1193
+ self .model .controller .view .set_footer_text (
1194
+ " You can't reply to messages from unsubscribed streams." ,
1195
+ 3 )
1196
+ return key
1187
1197
elif is_command_key ('QUOTE_REPLY' , key ):
1188
1198
self .keypress (size , 'enter' )
1189
1199
quote = '```quote\n ' + self .model .client .get_raw_message (
0 commit comments