From 0e60f07dd2bf08f2068a0f4b0516a96cff9cf4b7 Mon Sep 17 00:00:00 2001 From: Tomeu Vizoso Date: Fri, 31 Aug 2007 19:57:45 +0200 Subject: [PATCH 1/2] Save the temp file for the icon with the svg suffix so Icon will recognize it as a svg. --- sugar/activity/bundle.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/sugar/activity/bundle.py b/sugar/activity/bundle.py index d361c621..8bf33866 100644 --- a/sugar/activity/bundle.py +++ b/sugar/activity/bundle.py @@ -219,11 +219,9 @@ class Bundle: file_names = zip_file.namelist() root_dir = self._get_bundle_root_dir(file_names) icon_path = os.path.join(root_dir, 'activity', self._icon + '.svg') - print icon_path - print file_names if icon_path in file_names: icon_data = zip_file.read(icon_path) - temp_file, temp_file_path = tempfile.mkstemp(self._icon) + temp_file, temp_file_path = tempfile.mkstemp(suffix='.svg', prefix=self._icon) os.write(temp_file, icon_data) os.close(temp_file) return temp_file_path From ecbbcb0026a8883877ed0fabcbd40c4810bfa499 Mon Sep 17 00:00:00 2001 From: Tomeu Vizoso Date: Fri, 31 Aug 2007 20:37:44 +0200 Subject: [PATCH 2/2] Don't allow removing system-installed activities. --- NEWS | 1 + shell/view/frame/activitybutton.py | 9 +++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/NEWS b/NEWS index 6d784e44..68ca39ca 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,4 @@ +* Don't allow removing system-installed activities. (tomeu) * #3063: Make the 'Keep' button in the activity toolbar create a copy of the activity in the journal. Add a copy() method for activities to use. (tomeu) * #3045: Fix issues with the clipboard icons and palettes. (tomeu) diff --git a/shell/view/frame/activitybutton.py b/shell/view/frame/activitybutton.py index d9a7ca4d..93933fef 100644 --- a/shell/view/frame/activitybutton.py +++ b/shell/view/frame/activitybutton.py @@ -54,10 +54,11 @@ class ActivityButton(TrayButton, gobject.GObject): self.set_palette(palette) palette.props.invoker = FrameWidgetInvoker(self) - menu_item = gtk.MenuItem(_('Remove')) - menu_item.connect('activate', self.item_remove_cb) - palette.menu.append(menu_item) - menu_item.show() + if os.path.dirname(self._activity_info.path) == os.path.expanduser('~/Activities'): + menu_item = gtk.MenuItem(_('Remove')) + menu_item.connect('activate', self.item_remove_cb) + palette.menu.append(menu_item) + menu_item.show() def item_remove_cb(self, widget): self.emit('remove_activity')