diff --git a/activities/browser/browser.activity b/activities/browser/browser.activity index c7dfdacf..631d79cc 100644 --- a/activities/browser/browser.activity +++ b/activities/browser/browser.activity @@ -3,3 +3,4 @@ name = Web id = com.redhat.Sugar.BrowserActivity python_module = BrowserActivity.BrowserActivity default_type = _web_olpc._udp +show_launcher = yes diff --git a/shell/ActivityRegistry.py b/shell/ActivityRegistry.py index e9bd250e..2b3efde9 100644 --- a/shell/ActivityRegistry.py +++ b/shell/ActivityRegistry.py @@ -13,7 +13,8 @@ class ActivityModule: self._id = activity_id self._directory = directory self._exec = activity_exec - + self._show_launcher = False + def get_name(self): """Get the activity user visible name.""" return self._name @@ -38,6 +39,14 @@ class ActivityModule: """Set the the type of the default activity service.""" self._default_type = default_type + def get_show_launcher(self): + """Get whether there should be a visible launcher for the activity""" + return self._show_launcher + + def set_show_launcher(self, show_launcher): + """Set whether there should be a visible launcher for the activity""" + self._show_launcher = show_launcher + class ActivityRegistry: """Service that tracks the available activities""" @@ -102,6 +111,9 @@ class ActivityRegistry: module = ActivityModule(name, activity_id, activity_exec, directory) self._activities.append(module) + if cp.has_option('Activity', 'show_launcher'): + module.set_show_launcher(True) + module.set_default_type(default_type) return True diff --git a/shell/HomeWindow.py b/shell/HomeWindow.py index 47717f79..3d1fdc74 100644 --- a/shell/HomeWindow.py +++ b/shell/HomeWindow.py @@ -19,11 +19,13 @@ class NewActivityButton(gtk.MenuToolButton): menu = gtk.Menu() for module in self._home.list_activities(): - item = gtk.MenuItem(module.get_name(), False) - activity_id = module.get_id() - item.connect('activate', self.__menu_item_activate_cb, activity_id) - menu.append(item) - item.show() + if module.get_show_launcher(): + item = gtk.MenuItem(module.get_name(), False) + activity_id = module.get_id() + item.connect('activate', + self.__menu_item_activate_cb, activity_id) + menu.append(item) + item.show() self.set_menu(menu)