diff options
-rw-r--r-- | src/activity.py | 4 | ||||
-rw-r--r-- | src/buddy.py | 3 |
2 files changed, 7 insertions, 0 deletions
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 '<ps.buddy.Buddy %s>' % self._nick + def do_get_property(self, pspec): """Retrieve current value for the given property specifier |