diff options
author | Tomeu Vizoso <tomeu@sugarlabs.org> | 2009-02-04 18:52:47 (GMT) |
---|---|---|
committer | Tomeu Vizoso <tomeu@sugarlabs.org> | 2009-02-04 18:52:47 (GMT) |
commit | 46d2cc268e3e9a1badd58ec3c06a2e37993828c9 (patch) | |
tree | 4ab2463b6ae56e727e3be39f21886f4b6c3d1521 /src/jarabe/desktop/favoritesview.py | |
parent | 9a2614ef57594b4f125732d969ef569b1ba0927c (diff) |
show launcher screen as soon as possible. #243
So the user has inmediate feedback.
Diffstat (limited to 'src/jarabe/desktop/favoritesview.py')
-rw-r--r-- | src/jarabe/desktop/favoritesview.py | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/jarabe/desktop/favoritesview.py b/src/jarabe/desktop/favoritesview.py index 6de290b..9535edf 100644 --- a/src/jarabe/desktop/favoritesview.py +++ b/src/jarabe/desktop/favoritesview.py @@ -30,12 +30,14 @@ from sugar.graphics.menuitem import MenuItem from sugar.graphics.alert import Alert from sugar.graphics.xocolor import XoColor from sugar.activity import activityfactory +from sugar.activity.activityhandle import ActivityHandle from sugar.presence import presenceservice from sugar import dispatch from jarabe.view.palettes import JournalPalette from jarabe.view.palettes import CurrentActivityPalette, ActivityPalette from jarabe.view.buddymenu import BuddyMenu +from jarabe.view import launcher from jarabe.model.buddy import BuddyModel from jarabe.model import shell from jarabe.model import bundleregistry @@ -530,9 +532,22 @@ class ActivityIcon(CanvasIcon): def __button_release_event_cb(self, icon, event): self.palette.popdown(immediate=True) if get_settings().resume_mode and self._journal_entries: - journal.misc.resume(self._journal_entries[0]) + entry = self._journal_entries[0] + launcher.add_launcher(entry['activity_id'], + self._activity_info.get_icon(), + XoColor(entry.get('icon-color', ''))) + journal.misc.resume(entry) else: - activityfactory.create(self._activity_info) + client = gconf.client_get_default() + xo_color = XoColor(client.get_string('/desktop/sugar/user/color')) + + activity_id = activityfactory.create_activity_id() + launcher.add_launcher(activity_id, + self._activity_info.get_icon(), + xo_color) + + handle = ActivityHandle(activity_id) + activityfactory.create(self._activity_info, handle) def get_bundle_id(self): return self._activity_info.get_bundle_id() |