@@ -731,6 +731,10 @@ def append_message(self, event: Event) -> None:
731
731
recipient_stream = response ['display_recipient' ]
732
732
narrow_stream = self .narrow [0 ][1 ]
733
733
append_to_stream = recipient_stream == narrow_stream
734
+ unread_data = {'type' : response ['type' ],
735
+ 'sender_id' : response ['sender_id' ],
736
+ 'subject' : response ['subject' ],
737
+ 'display_recipient' : recipient_stream }
734
738
735
739
if append_to_stream and (len (self .narrow ) == 1 or
736
740
(len (self .narrow ) == 2 and
@@ -745,7 +749,10 @@ def append_message(self, event: Event) -> None:
745
749
[user ['id' ] for user in response ['display_recipient' ]])
746
750
if narrow_recipients == message_recipients :
747
751
self .msg_list .log .append (msg_w )
752
+ unread_data = {'type' : response ['type' ],
753
+ 'display_recipient' : message_recipients }
748
754
if 'read' not in response ['flags' ]:
755
+ self .index ['unread_msgs' ].update ({response ['id' ]: unread_data })
749
756
set_count ([response ['id' ]], self .controller , 1 )
750
757
self .controller .update_screen ()
751
758
@@ -840,8 +847,10 @@ def update_message_flag_status(self, event: Event) -> None:
840
847
self .update_rendered_view (message_id )
841
848
842
849
if event ['operation' ] == 'add' and flag_to_change == 'read' :
843
- set_count (list (message_ids_to_mark & indexed_message_ids ),
850
+ set_count (list (message_ids_to_mark ),
844
851
self .controller , - 1 )
852
+ for key in message_ids_to_mark :
853
+ self .index ['unread_msgs' ].pop (key )
845
854
846
855
def update_rendered_view (self , msg_id : int ) -> None :
847
856
# Update new content in the rendered view
0 commit comments