From 740060018ada2b33e548a1094be78ae48362e9be Mon Sep 17 00:00:00 2001 From: Tomeu Vizoso Date: Sat, 13 Jun 2009 18:58:05 +0000 Subject: Merge branch 'master' of gitorious@git.sugarlabs.org:sugar/mainline --- 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 = ['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 = {} -- cgit v0.9.1