diff options
author | Tomeu Vizoso <tomeu@tomeuvizoso.net> | 2008-05-26 14:49:20 (GMT) |
---|---|---|
committer | Tomeu Vizoso <tomeu@tomeuvizoso.net> | 2008-05-26 14:49:20 (GMT) |
commit | aab1868f20acb139e0a027d7b701dab0ffe67ddd (patch) | |
tree | d54ee95a7aa92ba2e56f8bdf71b6c2a7496e723d /src/view/home | |
parent | fe8257b74adad0ee603715989e3e67f24c0ad700 (diff) |
Fill the activity list progressively after startup.
Diffstat (limited to 'src/view/home')
-rw-r--r-- | src/view/home/HomeBox.py | 13 | ||||
-rw-r--r-- | src/view/home/activitieslist.py | 21 |
2 files changed, 18 insertions, 16 deletions
diff --git a/src/view/home/HomeBox.py b/src/view/home/HomeBox.py index c9effa6..0c75af6 100644 --- a/src/view/home/HomeBox.py +++ b/src/view/home/HomeBox.py @@ -39,8 +39,8 @@ class HomeBox(hippo.CanvasBox, hippo.CanvasItem): def __init__(self): hippo.CanvasBox.__init__(self) - self._ring_view = None - self._list_view = None + self._ring_view = ActivitiesRing() + self._list_view = ActivitiesList() self._enable_xo_palette = False self._toolbar = HomeToolbar() @@ -64,10 +64,8 @@ class HomeBox(hippo.CanvasBox, hippo.CanvasItem): if self._list_view in self.get_children(): self.remove(self._list_view) - if self._ring_view is None: - self._ring_view = ActivitiesRing() - if self._enable_xo_palette: - self._ring_view.enable_xo_palette() + if self._enable_xo_palette: + self._ring_view.enable_xo_palette() self.append(self._ring_view, hippo.PACK_EXPAND) @@ -75,9 +73,6 @@ class HomeBox(hippo.CanvasBox, hippo.CanvasItem): if self._ring_view in self.get_children(): self.remove(self._ring_view) - if self._list_view is None: - self._list_view = ActivitiesList() - self.append(self._list_view, hippo.PACK_EXPAND) else: raise ValueError('Invalid view: %r' % view) diff --git a/src/view/home/activitieslist.py b/src/view/home/activitieslist.py index 435bc0e..bec54b7 100644 --- a/src/view/home/activitieslist.py +++ b/src/view/home/activitieslist.py @@ -32,6 +32,7 @@ class ActivitiesList(hippo.CanvasScrollbars): def __init__(self): hippo.CanvasScrollbars.__init__(self) + self.set_policy(hippo.ORIENTATION_HORIZONTAL, hippo.SCROLLBAR_NEVER) self.props.widget.connect('key-press-event', self.__key_press_event_cb) @@ -46,9 +47,13 @@ class ActivitiesList(hippo.CanvasScrollbars): registry.connect('activity-removed', self.__activity_removed_cb) def _get_activities_cb(self, activity_list): - for info in activity_list: - if info.bundle_id != 'org.laptop.JournalActivity': - self._add_activity(info) + gobject.idle_add(self._add_activity_list, activity_list) + + def _add_activity_list(self, activity_list): + info = activity_list.pop() + if info.bundle_id != 'org.laptop.JournalActivity': + self._add_activity(info) + return len(activity_list) > 0 def __activity_added_cb(self, activity_registry, activity_info): self._add_activity(activity_info) @@ -121,6 +126,7 @@ class ActivityEntry(hippo.CanvasBox, hippo.CanvasItem): file_name=activity_info.icon, stroke_color=style.COLOR_BUTTON_GREY.get_svg(), fill_color=style.COLOR_TRANSPARENT.get_svg()) + self.icon.set_palette(ActivityPalette(activity_info)) self.icon.connect('hovering-changed', self.__icon_hovering_changed_event_cb) @@ -145,10 +151,11 @@ class ActivityEntry(hippo.CanvasBox, hippo.CanvasItem): self.append(expander, hippo.PACK_EXPAND) timestamp = activity_info.installation_time - date = hippo.CanvasText(text=util.timestamp_to_elapsed_string(timestamp), - xalign=hippo.ALIGNMENT_START, - font_desc=style.FONT_NORMAL.get_pango_desc(), - box_width=ActivityEntry._DATE_COL_WIDTH) + date = hippo.CanvasText( + text=util.timestamp_to_elapsed_string(timestamp), + xalign=hippo.ALIGNMENT_START, + font_desc=style.FONT_NORMAL.get_pango_desc(), + box_width=ActivityEntry._DATE_COL_WIDTH) self.append(date) def __favorite_changed_cb(self, favorite_icon, pspec): |