| ... |
... |
@@ -390,7 +390,7 @@ def _on_message_received(self, event): |
|
390
|
390
|
nickname=nick,
|
|
391
|
391
|
additional_data=event.additional_data)
|
|
392
|
392
|
|
|
393
|
|
- self._add_unread(row, event.properties, event.msgtxt)
|
|
|
393
|
+ self._add_unread(row, event)
|
|
394
|
394
|
self.invalidate_sort()
|
|
395
|
395
|
|
|
396
|
396
|
def _on_message_updated(self, event):
|
| ... |
... |
@@ -473,16 +473,23 @@ def _on_file_request_received(self, event): |
|
473
|
473
|
_('File'), icon_name='text-x-generic-symbolic')
|
|
474
|
474
|
|
|
475
|
475
|
@staticmethod
|
|
476
|
|
- def _add_unread(row, properties, text):
|
|
477
|
|
- if properties.is_carbon_message and properties.carbon.is_sent:
|
|
|
476
|
+ def _add_unread(row, event):
|
|
|
477
|
+ if event.properties.is_carbon_message:
|
|
|
478
|
+ if event.properties.carbon.is_sent:
|
|
|
479
|
+ return
|
|
|
480
|
+
|
|
|
481
|
+ if event.properties.is_from_us():
|
|
|
482
|
+ # Last message was from us (1:1), reset counter
|
|
|
483
|
+ row.reset_unread()
|
|
478
|
484
|
return
|
|
479
|
485
|
|
|
480
|
|
- if properties.is_from_us():
|
|
481
|
|
- # Last message was from us, reset counter
|
|
|
486
|
+ our_nick = get_group_chat_nick(event.account, event.jid)
|
|
|
487
|
+ if event.properties.muc_nickname == our_nick:
|
|
|
488
|
+ # Last message was from us (MUC), reset counter
|
|
482
|
489
|
row.reset_unread()
|
|
483
|
490
|
return
|
|
484
|
491
|
|
|
485
|
|
- row.add_unread(text)
|
|
|
492
|
+ row.add_unread(event.msgtxt)
|
|
486
|
493
|
|
|
487
|
494
|
def _on_account_changed(self, *args):
|
|
488
|
495
|
for row in self.get_children():
|