Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/view/home
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu@tomeuvizoso.net>2008-05-26 14:49:20 (GMT)
committer Tomeu Vizoso <tomeu@tomeuvizoso.net>2008-05-26 14:49:20 (GMT)
commitaab1868f20acb139e0a027d7b701dab0ffe67ddd (patch)
treed54ee95a7aa92ba2e56f8bdf71b6c2a7496e723d /src/view/home
parentfe8257b74adad0ee603715989e3e67f24c0ad700 (diff)
Fill the activity list progressively after startup.
Diffstat (limited to 'src/view/home')
-rw-r--r--src/view/home/HomeBox.py13
-rw-r--r--src/view/home/activitieslist.py21
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):