[Sugar-devel] [PATCH v2 sugar] Disable Start menu item for entries that can't be opened(Bug#328)
Aleksey Lim
alsroot at member.fsf.org
Fri Oct 15 10:33:59 EDT 2010
On Fri, Oct 15, 2010 at 04:19:43PM +0530, Mukul Gupta wrote:
> The patch disables the Start and Start With menu items for files
> which can't be opened by any installed activity and instead
> replace it with a hover dropdown with a menu item 'No activity
> installed to start entry'
> ---
> src/jarabe/journal/palettes.py | 38 +++++++++++++++++++++++---------------
> 1 files changed, 23 insertions(+), 15 deletions(-)
>
> v1->v2: Patch remade as per pep8 standards
>
> diff --git a/src/jarabe/journal/palettes.py b/src/jarabe/journal/palettes.py
> index 7c3e5ff..2ab93fe 100644
> --- a/src/jarabe/journal/palettes.py
> +++ b/src/jarabe/journal/palettes.py
> @@ -62,22 +62,30 @@ class ObjectPalette(Palette):
> Palette.__init__(self, primary_text=title,
> icon=activity_icon)
>
> - if metadata.get('activity_id', ''):
> - resume_label = _('Resume')
> - resume_with_label = _('Resume with')
> - else:
> - resume_label = _('Start')
> - resume_with_label = _('Start with')
> - menu_item = MenuItem(resume_label, 'activity-start')
> - menu_item.connect('activate', self.__start_activate_cb)
> - self.menu.append(menu_item)
> - menu_item.show()
> + if misc.get_activities(metadata):
There is an issue. For bundles, it will change existed beahviour
(click on bundles, .xo and .xol, sugar install/start it), you need to
check for bundles as well (misc.is_*_bundle).
> + if metadata.get('activity_id', ''):
> + resume_label = _('Resume')
> + resume_with_label = _('Resume with')
> + else:
> + resume_label = _('Start')
> + resume_with_label = _('Start with')
> + menu_item = MenuItem(resume_label, 'activity-start')
> + menu_item.connect('activate', self.__start_activate_cb)
> + self.menu.append(menu_item)
> + menu_item.show()
>
> - menu_item = MenuItem(resume_with_label, 'activity-start')
> - self.menu.append(menu_item)
> - menu_item.show()
> - start_with_menu = StartWithMenu(self._metadata)
> - menu_item.set_submenu(start_with_menu)
> + menu_item = MenuItem(resume_with_label, 'activity-start')
> + self.menu.append(menu_item)
> + menu_item.show()
> + start_with_menu = StartWithMenu(self._metadata)
> + menu_item.set_submenu(start_with_menu)
> +
> + else:
> + resume_label = _('No activity installed to start entry')
> + menu_item = MenuItem(resume_label)
> + menu_item.set_sensitive(False)
> + self.menu.append(menu_item)
> + menu_item.show()
>
> client = gconf.client_get_default()
> color = XoColor(client.get_string('/desktop/sugar/user/color'))
> --
> 1.7.0.4
>
--
Aleksey
More information about the Sugar-devel
mailing list