Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/sugar
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <marco@localhost.localdomain>2006-10-17 12:51:20 (GMT)
committer Marco Pesenti Gritti <marco@localhost.localdomain>2006-10-17 12:51:20 (GMT)
commit96867a37bf544fa78fa3783fd5ae50ded6fd32ec (patch)
tree65b33f4745346e663a06c68488749bcdb411ba9f /sugar
parent84a2dfac318713c763fb8f4c41cb66d0852410db (diff)
Fix browser initialization
Diffstat (limited to 'sugar')
-rw-r--r--sugar/activity/ActivityFactory.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/sugar/activity/ActivityFactory.py b/sugar/activity/ActivityFactory.py
index 6810f2e..e20c217 100644
--- a/sugar/activity/ActivityFactory.py
+++ b/sugar/activity/ActivityFactory.py
@@ -51,7 +51,8 @@ class ActivityFactory(dbus.service.Object):
if hasattr(module, 'start'):
module.start()
- self._class = getattr(module, class_name)
+ self._module = module
+ self._constructor = getattr(module, class_name)
bus = dbus.SessionBus()
factory = _get_factory(activity_type)
@@ -60,7 +61,7 @@ class ActivityFactory(dbus.service.Object):
@dbus.service.method("com.redhat.Sugar.ActivityFactory")
def create(self):
- activity = self._class()
+ activity = self._constructor()
activity.set_type(self._activity_type)
self._activities.append(activity)
@@ -70,6 +71,10 @@ class ActivityFactory(dbus.service.Object):
def _activity_destroy_cb(self, activity):
self._activities.remove(activity)
+
+ if hasattr(self._module, 'stop'):
+ self._module.stop()
+
if len(self._activities) == 0:
gtk.main_quit()