# HG changeset patch # User souliane # Date 1429183874 -7200 # Node ID 8a71451383301c0510935f891f50687539328590 # Parent 77f07ea9042002c7eae0ff6830705a4468bcb35f quick_frontend, primitivus: move code to remove a new message alert from primitivus to quick_frontend diff -r 77f07ea90420 -r 8a7145138330 frontends/src/primitivus/contact_list.py --- a/frontends/src/primitivus/contact_list.py Thu Apr 09 11:27:13 2015 +0200 +++ b/frontends/src/primitivus/contact_list.py Thu Apr 16 13:31:14 2015 +0200 @@ -136,16 +136,8 @@ @param selected: boolean returned by the widget, telling if it is selected """ entity = contact_wid.data - if use_bare_jid: - to_remove = set() - for alert_entity in self._alerts: - if alert_entity.bare == entity.bare: - to_remove.add(alert_entity) - self._alerts.difference_update(to_remove) - else: - self._alerts.discard(entity) + self.removeAlert(entity, use_bare_jid) self.host.modeHint(C.MODE_INSERTION) - self.update() self._emit('click', entity) def onNickUpdate(self, entity, new_nick, profile): diff -r 77f07ea90420 -r 8a7145138330 frontends/src/quick_frontend/quick_contact_list.py --- a/frontends/src/quick_frontend/quick_contact_list.py Thu Apr 09 11:27:13 2015 +0200 +++ b/frontends/src/quick_frontend/quick_contact_list.py Thu Apr 16 13:31:14 2015 +0200 @@ -444,6 +444,22 @@ self._alerts.add(entity) self.update() + def removeAlert(self, entity, use_bare_jid=True): + """Eventually remove an alert on the entity (usually for a waiting message). + + @param entity(jid.JID): entity (resource is significant) + @param use_bare_jid (bool): if True, ignore the resource + """ + if use_bare_jid: + to_remove = set() + for alert_entity in self._alerts: + if alert_entity.bare == entity.bare: + to_remove.add(alert_entity) + self._alerts.difference_update(to_remove) + else: + self._alerts.discard(entity) + self.update() + def _showOfflineContacts(self, show_str): self.showOfflineContacts(C.bool(show_str))