diff options
author | Dan Williams <dcbw@localhost.localdomain> | 2006-08-17 03:05:53 (GMT) |
---|---|---|
committer | Dan Williams <dcbw@localhost.localdomain> | 2006-08-17 03:05:53 (GMT) |
commit | 6d7782654c15ea13f4bc9adf92efd9506d4ebc20 (patch) | |
tree | 97164b3f45f3a6ae9c287a9027c276fb5f4b4d22 /sugar | |
parent | 95c06280ca214fe13570e5aebd0d40857f90610c (diff) |
Cache activity id
Diffstat (limited to 'sugar')
-rw-r--r-- | sugar/presence/Activity.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sugar/presence/Activity.py b/sugar/presence/Activity.py index 6fda309..35def82 100644 --- a/sugar/presence/Activity.py +++ b/sugar/presence/Activity.py @@ -28,6 +28,8 @@ class Activity(gobject.GObject): self._activity.connect_to_signal('BuddyLeft', self._buddy_left_cb) self._activity.connect_to_signal('ServiceAppeared', self._service_appeared_cb) self._activity.connect_to_signal('ServiceDisappeared', self._service_disappeared_cb) + + self._id = None def object_path(self): return self._object_path @@ -61,7 +63,10 @@ class Activity(gobject.GObject): gobject.idle_add(self._emit_service_disappeared_signal, object_path) def get_id(self): - return self._activity.getId() + # Cache activity ID, which should never change anyway + if not self._id: + self._id = self._activity.getId() + return self._id def get_icon(self): return self._buddy.getIcon() |