quick_frontend (contact_list): rename QuickContactList.remove to QuickContactList.removeContact + remove the contact from _roster attribute (and not only from _cache)
This commit is contained in:
parent
fbec02d396
commit
c1b7c3c027
2 changed files with 6 additions and 3 deletions
|
|
@ -543,7 +543,7 @@ class QuickApp(object):
|
|||
chat_widget = self.widgets.getWidget(quick_chat.QuickChat, room_jid, profile)
|
||||
if chat_widget:
|
||||
self.widgets.deleteWidget(chat_widget)
|
||||
self.contact_lists[profile].remove(room_jid)
|
||||
self.contact_lists[profile].removeContact(room_jid)
|
||||
|
||||
def roomUserJoinedHandler(self, room_jid_s, user_nick, user_data, profile):
|
||||
"""Called when an user joined a MUC room"""
|
||||
|
|
@ -643,7 +643,7 @@ class QuickApp(object):
|
|||
|
||||
def contactDeletedHandler(self, jid_s, profile):
|
||||
target = jid.JID(jid_s)
|
||||
self.contact_lists[profile].remove(target)
|
||||
self.contact_lists[profile].removeContact(target, in_roster=True)
|
||||
|
||||
def entityDataUpdatedHandler(self, entity_s, key, value, profile):
|
||||
entity = jid.JID(entity_s)
|
||||
|
|
|
|||
|
|
@ -352,16 +352,19 @@ class QuickContactList(QuickWidget):
|
|||
"""
|
||||
return entity in self.getGroupData(group, "jids")
|
||||
|
||||
def remove(self, entity):
|
||||
def removeContact(self, entity, in_roster=False):
|
||||
"""remove a contact from the list
|
||||
|
||||
@param entity(jid.JID): jid of the entity to remove (bare jid is used)
|
||||
@param in_roster (bool): True if contact is from roster
|
||||
"""
|
||||
entity_bare = entity.bare
|
||||
try:
|
||||
groups = self._cache[entity_bare].get(C.CONTACT_GROUPS, set())
|
||||
except KeyError:
|
||||
log.warning(_("Trying to delete an unknow entity [{}]").format(entity))
|
||||
if in_roster:
|
||||
self._roster.remove(entity_bare)
|
||||
del self._cache[entity_bare]
|
||||
for group in groups:
|
||||
self._groups[group]['jids'].remove(entity_bare)
|
||||
|
|
|
|||
Loading…
Reference in a new issue