Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/sugar
diff options
context:
space:
mode:
authorDan Williams <dcbw@localhost.localdomain>2006-08-17 03:05:53 (GMT)
committer Dan Williams <dcbw@localhost.localdomain>2006-08-17 03:05:53 (GMT)
commit6d7782654c15ea13f4bc9adf92efd9506d4ebc20 (patch)
tree97164b3f45f3a6ae9c287a9027c276fb5f4b4d22 /sugar
parent95c06280ca214fe13570e5aebd0d40857f90610c (diff)
Cache activity id
Diffstat (limited to 'sugar')
-rw-r--r--sugar/presence/Activity.py7
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()