Author: steve-e Date: 2008-06-14 00:54:36 +0200 (Sat, 14 Jun 2008) New Revision: 9800
Modified: trunk/src/roster_window.py Log: Do not instantly recalibrate metacontacts when the last online brother signs out. Fixes #3880.
Modified: trunk/src/roster_window.py =================================================================== --- trunk/src/roster_window.py 2008-06-13 22:47:41 UTC (rev 9799) +++ trunk/src/roster_window.py 2008-06-13 22:54:36 UTC (rev 9800) @@ -550,7 +550,11 @@
# Check if the current BigBrother has even been before. if parent_type == 'contact': - # There is a new big brother + for data in nearby_family: + # recalibrate after remove to keep highlight + if data['jid'] in gajim.to_be_removed[data['account']]: + return + self._remove_metacontact_family(family, account) brothers = self._add_metacontact_family(family, account)
@@ -829,6 +833,10 @@ return if jid in gajim.to_be_removed[account]: gajim.to_be_removed[account].remove(jid) + family = gajim.contacts.get_metacontacts_family(account, jid) + if family: + # Peform delayed recalibration + self._recalibrate_metacontact_family(family, account) self.draw_contact(jid, account)
#FIXME: integrate into add_contact()