comparison frontends/src/quick_frontend/quick_contact_list.py @ 1399:5c3d1d970b94

quick_frontend: keep the contact list groups synchronised on contact deletion
author souliane <souliane@mailoo.org>
date Wed, 01 Apr 2015 23:59:56 +0200
parents 96dd0ae1a850
children 8a7145138330
comparison
equal deleted inserted replaced
1398:f8ecce11a0bc 1399:5c3d1d970b94
206 206
207 @param group: a valid (existing) group name 207 @param group: a valid (existing) group name
208 @param name: name of the data (can't be "jids") 208 @param name: name of the data (can't be "jids")
209 @param value: value to set 209 @param value: value to set
210 """ 210 """
211 # FIXME: this is never used, should it be removed?
211 assert name is not 'jids' 212 assert name is not 'jids'
212 self._groups[group][name] = value 213 self._groups[group][name] = value
213 214
214 def getGroupData(self, group, name=None): 215 def getGroupData(self, group, name=None):
215 """Return value associated to group data 216 """Return value associated to group data
366 if in_roster: 367 if in_roster:
367 self._roster.remove(entity_bare) 368 self._roster.remove(entity_bare)
368 del self._cache[entity_bare] 369 del self._cache[entity_bare]
369 for group in groups: 370 for group in groups:
370 self._groups[group]['jids'].remove(entity_bare) 371 self._groups[group]['jids'].remove(entity_bare)
372 if not self._groups[group]['jids']:
373 self._groups.pop(group)
371 for set_ in (self._selected, self._alerts, self._specials, self._special_extras): 374 for set_ in (self._selected, self._alerts, self._specials, self._special_extras):
372 to_remove = set() 375 to_remove = set()
373 for set_entity in set_: 376 for set_entity in set_:
374 if set_entity.bare == entity.bare: 377 if set_entity.bare == entity.bare:
375 to_remove.add(set_entity) 378 to_remove.add(set_entity)