diff options
author | Marco Pesenti Gritti <marco@localhost.localdomain> | 2006-08-08 10:01:45 (GMT) |
---|---|---|
committer | Marco Pesenti Gritti <marco@localhost.localdomain> | 2006-08-08 10:01:45 (GMT) |
commit | 2535a886452337cbda22720422ffe27d4dca72c9 (patch) | |
tree | 46eb3f9e4233e2bd594956b5790cf4f3002aa6c7 /shell | |
parent | 544e47cbe0fc73f153f4572051bd88b688af2533 (diff) |
Use the default service to get activity informations, instead
of Activity ps object.
Diffstat (limited to 'shell')
-rw-r--r-- | shell/ActivitiesModel.py | 16 | ||||
-rw-r--r-- | shell/HomeWindow.py | 2 |
2 files changed, 10 insertions, 8 deletions
diff --git a/shell/ActivitiesModel.py b/shell/ActivitiesModel.py index 01d83ec..8a7ba68 100644 --- a/shell/ActivitiesModel.py +++ b/shell/ActivitiesModel.py @@ -3,17 +3,17 @@ import xml.sax.saxutils import gobject from sugar.presence.PresenceService import PresenceService +from ActivityRegistry import ActivityRegistry class ActivityInfo: def __init__(self, service): self._service = service def get_id(self): - activity_id = self._service.get_id() + return self._service.get_activity_id() def get_type(self): - # FIXME - return "_web_olpc._udp" + return self._service.get_type() def get_title(self): return "FIXME Title" @@ -29,13 +29,14 @@ class ActivitiesModel(gobject.GObject): ([gobject.TYPE_PYOBJECT])) } - def __init__(self): + def __init__(self, registry): gobject.GObject.__init__(self) self._activities = [] + self._registry = registry self._pservice = PresenceService() - self._pservice.connect("activity-appeared", self._on_activity_announced_cb) + self._pservice.connect("service-appeared", self.__service_appeared_cb) def add_activity(self, service): activity_info = ActivityInfo(service) @@ -45,5 +46,6 @@ class ActivitiesModel(gobject.GObject): def __iter__(self): return self._activities.__iter__() - def _on_activity_announced_cb(self, pservice, activity): - self.add_activity(activity) + def __service_appeared_cb(self, pservice, service): + if self._registry.get_activity(service.get_type()) != None: + self.add_activity(service) diff --git a/shell/HomeWindow.py b/shell/HomeWindow.py index 3d1fdc7..e43f864 100644 --- a/shell/HomeWindow.py +++ b/shell/HomeWindow.py @@ -144,7 +144,7 @@ class HomeWindow(gtk.Window): vbox.pack_start(label, False) label.show() - model = ActivitiesModel() + model = ActivitiesModel(shell.get_registry()) grid = ActivitiesGrid(shell, model) vbox.pack_start(grid) grid.show() |