From e94e404e16024853abb02bd1657d008ba43823b7 Mon Sep 17 00:00:00 2001 From: Aleksey Lim Date: Wed, 30 Sep 2009 15:11:34 +0000 Subject: Starting/resuming an entry from Journal shows wrong colours #1421 --- 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/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) -- cgit v0.9.1