quick frontends (contact list): cache is not cleared anymore on QuickContactList.fill, avoiding the accidental removal of cached values like avatars
This commit is contained in:
parent
3c6a708966
commit
2602e4efbb
1 changed files with 8 additions and 4 deletions
|
|
@ -139,7 +139,7 @@ class QuickContactList(QuickWidget):
|
||||||
|
|
||||||
Contacts will be cleared before refilling them
|
Contacts will be cleared before refilling them
|
||||||
"""
|
"""
|
||||||
self.clearContacts()
|
self.clearContacts(keep_cache=True)
|
||||||
def gotContacts(contacts):
|
def gotContacts(contacts):
|
||||||
for contact in contacts:
|
for contact in contacts:
|
||||||
self.host.newContactHandler(*contact, profile=self.profile)
|
self.host.newContactHandler(*contact, profile=self.profile)
|
||||||
|
|
@ -259,10 +259,14 @@ class QuickContactList(QuickWidget):
|
||||||
return self._special_extras
|
return self._special_extras
|
||||||
return set([extra for extra in self._special_extras if extra.bare in self.getSpecials(special_type)])
|
return set([extra for extra in self._special_extras if extra.bare in self.getSpecials(special_type)])
|
||||||
|
|
||||||
def clearContacts(self):
|
def clearContacts(self, keep_cache=False):
|
||||||
"""Clear all the contact list"""
|
"""Clear all the contact list
|
||||||
|
|
||||||
|
@param keep_cache: if True, don't reset the cache
|
||||||
|
"""
|
||||||
self.unselectAll()
|
self.unselectAll()
|
||||||
self._cache.clear()
|
if not keep_cache:
|
||||||
|
self._cache.clear()
|
||||||
self._groups.clear()
|
self._groups.clear()
|
||||||
self._specials.clear()
|
self._specials.clear()
|
||||||
self._special_extras.clear()
|
self._special_extras.clear()
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue