From a6c33403ffe9d61ea93fcc1546535c7362c01095 Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Fri, 16 Jun 2006 17:01:25 -0400 Subject: [PATCH] Listen to local activity lifecycle signals --- sugar/shell/StartPage.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/sugar/shell/StartPage.py b/sugar/shell/StartPage.py index 18fc2b4d..6d71871a 100644 --- a/sugar/shell/StartPage.py +++ b/sugar/shell/StartPage.py @@ -70,9 +70,15 @@ class ActivitiesView(gtk.TreeView): browser_shell.open_browser_with_id(address, activity_id) class StartPage(gtk.HBox): - def __init__(self): + def __init__(self, ac_signal_object): gtk.HBox.__init__(self) + self._ac_signal_object = ac_signal_object + self._ac_signal_object.connect("local-activity-started", + self._on_local_activity_started_cb) + self._ac_signal_object.connect("local-activity-ended", + self._on_local_activity_ended_cb) + self._pservice = PresenceService.get_instance() self._pservice.connect("activity-announced", self._on_activity_announced_cb) self._pservice.start() @@ -114,6 +120,13 @@ class StartPage(gtk.HBox): self.pack_start(sw) sw.show() + def _on_local_activity_started_cb(self, helper, activity_container, activity_id): + self._pservice.track_activity(activity_id) + print "new local activity %s" % activity_id + + def _on_local_activity_ended_cb(self, helper, activity_container, activity_id): + self._pservice.untrack_activity(activity_id) + def _on_activity_announced_cb(self, pservice, service, buddy): self._activities.get_model().add_activity(buddy, service)