diff options
author | Sascha Silbe <sascha@silbe.org> | 2009-10-04 10:55:31 (GMT) |
---|---|---|
committer | Sascha Silbe <sascha@silbe.org> | 2009-10-04 10:55:31 (GMT) |
commit | d05ae8de194ead3861ff58da703a76c6739abcf4 (patch) | |
tree | d7c1864ad3a55f16090aa2296e2715acf597dcd9 | |
parent | 17cc3d062a320372173dc93b6701f74b81f5f3f1 (diff) | |
parent | e03026271fe26392e68aa9effbeacc2edc9ddaf1 (diff) |
Merge commit 'refs/top-bases/t/sugar-py' into t/sugar-pyrefs/top-bases/t/sugar-i18nt/sugar-py
Conflicts:
bin/sugar.in
-rw-r--r-- | bin/sugar-emulator | 17 | ||||
-rwxr-xr-x[-rw-r--r--] | bin/sugar-session | 1 | ||||
-rw-r--r-- | configure.ac | 4 | ||||
-rw-r--r-- | extensions/globalkey/screenshot.py | 4 | ||||
-rw-r--r-- | src/jarabe/desktop/favoritesview.py | 10 | ||||
-rw-r--r-- | src/jarabe/desktop/homewindow.py | 5 | ||||
-rw-r--r-- | src/jarabe/frame/activitiestray.py | 8 | ||||
-rw-r--r-- | src/jarabe/journal/journalactivity.py | 2 | ||||
-rw-r--r-- | src/jarabe/journal/misc.py | 16 |
9 files changed, 36 insertions, 31 deletions
diff --git a/bin/sugar-emulator b/bin/sugar-emulator index 7f06609..99856dc 100644 --- a/bin/sugar-emulator +++ b/bin/sugar-emulator @@ -73,8 +73,9 @@ def _start_xephyr(dpi, dimensions, fullscreen): # FIXME evil workaround until F10 Xephyr is fixed if os.path.exists('/etc/fedora-release'): if open('/etc/fedora-release').read().startswith('Fedora release 10'): - _run_xephyr(random.randint(100, 500), dpi, dimensions, fullscreen) - return + display = random.randint(100, 500) + _run_xephyr(display, dpi, dimensions, fullscreen) + return display for display in range(100, 110): if not _check_xephyr(display): @@ -83,15 +84,15 @@ def _start_xephyr(dpi, dimensions, fullscreen): tries = 10 while tries > 0: if _check_xephyr(display): - return + return display else: tries -= 1 time.sleep(0.1) -def _start_window_manager(): +def _start_window_manager(display): cmd = ['metacity'] - cmd.extend(['--no-force-fullscreen']) + cmd.extend(['--no-force-fullscreen', '-d', ':%d' % display]) gobject.spawn_async(cmd, flags=gobject.SPAWN_SEARCH_PATH) @@ -146,7 +147,7 @@ def main(): _setup_env() - _start_xephyr(options.dpi, options.dimensions, options.fullscreen) + display = _start_xephyr(options.dpi, options.dimensions, options.fullscreen) if options.scaling: os.environ['SUGAR_SCALING'] = options.scaling @@ -154,9 +155,9 @@ def main(): command = ['dbus-launch', 'dbus-launch', '--exit-with-session'] if not args: - command.append('sugar') + command.extend(['sugar', '-d', ':%d' % display]) else: - _start_window_manager() + _start_window_manager(display) if args[0].endswith('.py'): command.append('python') diff --git a/bin/sugar-session b/bin/sugar-session index 41c9255..427eeb8 100644..100755 --- a/bin/sugar-session +++ b/bin/sugar-session @@ -181,7 +181,6 @@ def main(): logger.start('shell') client = gconf.client_get_default() - client.set_string('/desktop/gnome/peripherals/mouse/cursor_theme', 'sugar') client.set_string('/apps/metacity/general/mouse_button_modifier', 'disabled') diff --git a/configure.ac b/configure.ac index 287f1c6..4d256f8 100644 --- a/configure.ac +++ b/configure.ac @@ -1,11 +1,11 @@ -AC_INIT([Sugar],[0.86.0],[],[sugar]) +AC_INIT([Sugar],[0.86.1],[],[sugar]) AC_PREREQ([2.59]) AC_CONFIG_MACRO_DIR([m4]) AC_CONFIG_SRCDIR([configure.ac]) -SUCROSE_VERSION="0.86.0" +SUCROSE_VERSION="0.86.1" AC_SUBST(SUCROSE_VERSION) AM_INIT_AUTOMAKE([1.9 foreign dist-bzip2 no-dist-gzip]) diff --git a/extensions/globalkey/screenshot.py b/extensions/globalkey/screenshot.py index 5474b4c..65de63b 100644 --- a/extensions/globalkey/screenshot.py +++ b/extensions/globalkey/screenshot.py @@ -31,7 +31,9 @@ from jarabe.model import shell BOUND_KEYS = ['<alt>1', 'Print'] def handle_key_press(key): - file_path = os.path.join(tempfile.gettempdir(), '%i' % time.time()) + fd, file_path = tempfile.mkstemp( + dir=os.path.join(env.get_profile_path(), 'data')) + os.close(fd) window = gtk.gdk.get_default_root_window() width, height = window.get_size() diff --git a/src/jarabe/desktop/favoritesview.py b/src/jarabe/desktop/favoritesview.py index 490e5c0..eccd517 100644 --- a/src/jarabe/desktop/favoritesview.py +++ b/src/jarabe/desktop/favoritesview.py @@ -522,16 +522,6 @@ class ActivityIcon(CanvasIcon): def _resume(self, journal_entry): if not journal_entry['activity_id']: journal_entry['activity_id'] = activityfactory.create_activity_id() - - shell_model = shell.get_model() - activity = shell_model.get_activity_by_id(journal_entry['activity_id']) - if activity: - activity.get_window().activate(gtk.get_current_event_time()) - return - - launcher.add_launcher(journal_entry['activity_id'], - self._activity_info.get_icon(), - misc.get_icon_color(journal_entry)) misc.resume(journal_entry, self._activity_info.get_bundle_id()) def _activate(self): diff --git a/src/jarabe/desktop/homewindow.py b/src/jarabe/desktop/homewindow.py index 50fa70c..d830ed0 100644 --- a/src/jarabe/desktop/homewindow.py +++ b/src/jarabe/desktop/homewindow.py @@ -117,7 +117,10 @@ class HomeWindow(gtk.Window): def __map_event_cb(self, window, event): # have to make the desktop window active # since metacity doesn't make it on startup - self.window.focus() + timestamp = event.get_time() + if not timestamp: + timestamp = gtk.gdk.x11_get_server_time(self.window) + self.window.focus(timestamp) def __zoom_level_changed_cb(self, **kwargs): old_level = kwargs['old_level'] diff --git a/src/jarabe/frame/activitiestray.py b/src/jarabe/frame/activitiestray.py index d6831b2..4946875 100644 --- a/src/jarabe/frame/activitiestray.py +++ b/src/jarabe/frame/activitiestray.py @@ -343,18 +343,18 @@ class ActivitiesTray(HTray): button = ActivityButton(home_activity, group) self.add_item(button) - self._buttons[home_activity.get_activity_id()] = button + self._buttons[home_activity.get_xid()] = button button.connect('clicked', self.__activity_clicked_cb, home_activity) button.show() def __activity_removed_cb(self, home_model, home_activity): logging.debug('__activity_removed_cb: %r', home_activity) - button = self._buttons[home_activity.get_activity_id()] + button = self._buttons[home_activity.get_xid()] self.remove_item(button) - del self._buttons[home_activity.get_activity_id()] + del self._buttons[home_activity.get_xid()] def _activate_activity(self, home_activity): - button = self._buttons[home_activity.get_activity_id()] + button = self._buttons[home_activity.get_xid()] self._freeze_button_clicks = True button.props.active = True self._freeze_button_clicks = False diff --git a/src/jarabe/journal/journalactivity.py b/src/jarabe/journal/journalactivity.py index 7dbef28..0d6d09d 100644 --- a/src/jarabe/journal/journalactivity.py +++ b/src/jarabe/journal/journalactivity.py @@ -180,8 +180,6 @@ class JournalActivity(Window): def _key_press_event_cb(self, widget, event): keyname = gtk.gdk.keyval_name(event.keyval) - logging.info(keyname) - logging.info(event.state) if keyname == 'Escape': self.show_main_view() diff --git a/src/jarabe/journal/misc.py b/src/jarabe/journal/misc.py index a9baec8..24ad216 100644 --- a/src/jarabe/journal/misc.py +++ b/src/jarabe/journal/misc.py @@ -21,6 +21,7 @@ from gettext import gettext as _ import gio import gconf +import gtk from sugar.activity import activityfactory from sugar.activity.activityhandle import ActivityHandle @@ -31,7 +32,8 @@ from sugar.bundle.activitybundle import ActivityBundle from sugar.bundle.contentbundle import ContentBundle from sugar import util -from jarabe.model import bundleregistry +from jarabe.view import launcher +from jarabe.model import bundleregistry, shell from jarabe.journal.journalentrybundle import JournalEntryBundle from jarabe.journal import model @@ -192,6 +194,15 @@ def resume(metadata, bundle_id=None): activity_bundle = registry.get_bundle(activities[0].get_bundle_id()) activityfactory.create_with_uri(activity_bundle, bundle.get_start_uri()) else: + activity_id = metadata.get('activity_id', '') + + if activity_id: + shell_model = shell.get_model() + activity = shell_model.get_activity_by_id(activity_id) + if activity: + activity.get_window().activate(gtk.get_current_event_time()) + return + if bundle_id is None: activities = get_activities(metadata) if not activities: @@ -202,7 +213,6 @@ def resume(metadata, bundle_id=None): bundle = registry.get_bundle(bundle_id) - activity_id = metadata.get('activity_id', '') if metadata.get('mountpoint', '/') == '/': object_id = metadata['uid'] @@ -210,6 +220,8 @@ def resume(metadata, bundle_id=None): object_id = model.copy(metadata, '/') if activity_id: + launcher.add_launcher(activity_id, bundle.get_icon(), + get_icon_color(metadata)) handle = ActivityHandle(object_id=object_id, activity_id=activity_id) activityfactory.create(bundle, handle) |