Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS1
-rw-r--r--shell/view/frame/activitybutton.py9
-rw-r--r--sugar/activity/bundle.py4
3 files changed, 7 insertions, 7 deletions
diff --git a/NEWS b/NEWS
index 6d784e4..68ca39c 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 d9a7ca4..93933fe 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')
diff --git a/sugar/activity/bundle.py b/sugar/activity/bundle.py
index d361c62..8bf3386 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