diff --git a/shell/model/MeshModel.py b/shell/model/MeshModel.py index 2b47bafc..d8b86407 100644 --- a/shell/model/MeshModel.py +++ b/shell/model/MeshModel.py @@ -67,8 +67,12 @@ class MeshModel(gobject.GObject): def _buddy_activity_changed_cb(self, buddy, cur_activity): buddy_model = self._buddies[buddy.get_name()] - activity_model = self._activities[cur_activity.get_id()] - self.emit('buddy-moved', buddy_model, activity_model) + + if cur_activity == None: + self.emit('buddy-moved', buddy_model, None) + else: + activity_model = self._activities[cur_activity.get_id()] + self.emit('buddy-moved', buddy_model, activity_model) def _buddy_appeared_cb(self, pservice, buddy): model = BuddyModel(buddy=buddy) diff --git a/shell/view/home/MeshGroup.py b/shell/view/home/MeshGroup.py index 689f759e..a95605d3 100644 --- a/shell/view/home/MeshGroup.py +++ b/shell/view/home/MeshGroup.py @@ -117,7 +117,7 @@ class MeshGroup(goocanvas.Group): self._remove_buddy(buddy_model) if activity_model == None: - self.add_buddy(buddy_model) + self._add_alone_buddy(buddy_model) else: activity = self._activities[activity_model.get_id()]