Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu@sugarlabs.org>2009-06-13 18:58:05 (GMT)
committer Tomeu Vizoso <tomeu@sugarlabs.org>2009-06-13 18:58:05 (GMT)
commit740060018ada2b33e548a1094be78ae48362e9be (patch)
treecabc4b1d48f5709ca30531198b589f904bdd180b
parent01781da66d43cd17ec81ffb0cee44a0b2290fe65 (diff)
parent83b04c271a6a43ce7722f6a271db9cc32c10462d (diff)
Merge branch 'master' of gitorious@git.sugarlabs.org:sugar/mainline
-rw-r--r--extensions/globalkey/screenshot.py28
-rw-r--r--src/jarabe/model/bundleregistry.py4
2 files changed, 30 insertions, 2 deletions
diff --git a/extensions/globalkey/screenshot.py b/extensions/globalkey/screenshot.py
index b7538ef..5474b4c 100644
--- a/extensions/globalkey/screenshot.py
+++ b/extensions/globalkey/screenshot.py
@@ -1,5 +1,5 @@
# Copyright (C) 2008 One Laptop Per Child
-# Copyright (C) 2009 Simon Schampijer
+# Copyright (C) 2009 Simon Schampijer, James Zaki
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -26,6 +26,7 @@ import dbus
from sugar.datastore import datastore
from sugar.graphics import style
+from jarabe.model import shell
BOUND_KEYS = ['<alt>1', 'Print']
@@ -46,9 +47,32 @@ def handle_key_press(key):
client = gconf.client_get_default()
color = client.get_string('/desktop/sugar/user/color')
+ content_title = None
+ shell_model = shell.get_model()
+ zoom_level = shell_model.zoom_level
+
+ # TRANS: Nouns of what a screenshot contains
+ if zoom_level == shell_model.ZOOM_MESH:
+ content_title = _('Mesh')
+ elif zoom_level == shell_model.ZOOM_GROUP:
+ content_title = _('Group')
+ elif zoom_level == shell_model.ZOOM_HOME:
+ content_title = _('Home')
+ elif zoom_level == shell_model.ZOOM_ACTIVITY:
+ activity = shell_model.get_active_activity()
+ if activity != None:
+ content_title = activity.get_title()
+ if content_title == None:
+ content_title = _('Activity')
+
+ if content_title is None:
+ title = _('Screenshot')
+ else:
+ title = _('Screenshot of \"%s\"') % content_title
+
jobject = datastore.create()
try:
- jobject.metadata['title'] = _('Screenshot')
+ jobject.metadata['title'] = title
jobject.metadata['keep'] = '0'
jobject.metadata['buddies'] = ''
jobject.metadata['preview'] = _get_preview_data(screenshot)
diff --git a/src/jarabe/model/bundleregistry.py b/src/jarabe/model/bundleregistry.py
index 42d39b0..068cf8d 100644
--- a/src/jarabe/model/bundleregistry.py
+++ b/src/jarabe/model/bundleregistry.py
@@ -51,12 +51,16 @@ class BundleRegistry(gobject.GObject):
self._mime_defaults = self._load_mime_defaults()
self._bundles = []
+ # hold a reference to the monitors so they don't get disposed
+ self._gio_monitors = []
+
user_path = env.get_user_activities_path()
for activity_dir in [user_path, config.activities_path]:
self._scan_directory(activity_dir)
directory = gio.File(activity_dir)
monitor = directory.monitor_directory()
monitor.connect('changed', self.__file_monitor_changed_cb)
+ self._gio_monitors.append(monitor)
self._last_defaults_mtime = -1
self._favorite_bundles = {}