From f7c174aa82bbafa6ebdc33930acb9f8aaa37e689 Mon Sep 17 00:00:00 2001 From: Morgan Collett Date: Mon, 09 Jul 2007 11:45:21 +0000 Subject: Remove buddy anyway on leaving, works at least partially --- diff --git a/src/activity.py b/src/activity.py index c58f38a..0cc16e7 100644 --- a/src/activity.py +++ b/src/activity.py @@ -471,6 +471,7 @@ class Activity(ExportedGObject): def _remove_buddies(self, buddies): buddies = set(buddies) + _logger.debug("Removing buddies: %r", buddies) # disregard any who are not already there buddies &= self._buddies @@ -500,6 +501,9 @@ class Activity(ExportedGObject): """ if not self._joined: self._remove_buddies((buddy,)) + else: + # XXX Buddy-left starts working partially at least, if we do this anyway: + self._remove_buddies((buddy,)) def _text_channel_group_flags_changed_cb(self, added, removed): self._text_channel_group_flags |= added diff --git a/src/buddy.py b/src/buddy.py index 64e5831..d8d5694 100644 --- a/src/buddy.py +++ b/src/buddy.py @@ -214,6 +214,9 @@ class Buddy(ExportedGObject): self._icon = str(icon_data) self.IconChanged(self._icon) + def __repr__(self): + return '' % self._nick + def do_get_property(self, pspec): """Retrieve current value for the given property specifier -- cgit v0.9.1