From 96867a37bf544fa78fa3783fd5ae50ded6fd32ec Mon Sep 17 00:00:00 2001 From: Marco Pesenti Gritti Date: Tue, 17 Oct 2006 12:51:20 +0000 Subject: Fix browser initialization --- (limited to 'sugar') 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() -- cgit v0.9.1