Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <mpg@redhat.com>2007-08-29 12:04:46 (GMT)
committer Marco Pesenti Gritti <mpg@redhat.com>2007-08-29 12:04:46 (GMT)
commit710f3eba00182094be29206696f3f9bef174269c (patch)
treee88101801e3db975c49e91a72ff750c59aa759a2
parent0512ae58537a4790a635c1e7cc1f095f34af95b3 (diff)
Tray size allocation fixes.
-rw-r--r--shell/view/frame/ActivitiesBox.py5
-rw-r--r--shell/view/frame/frame.py2
-rw-r--r--sugar/graphics/tray.py34
3 files changed, 23 insertions, 18 deletions
diff --git a/shell/view/frame/ActivitiesBox.py b/shell/view/frame/ActivitiesBox.py
index affd34d..9911aff 100644
--- a/shell/view/frame/ActivitiesBox.py
+++ b/shell/view/frame/ActivitiesBox.py
@@ -54,7 +54,7 @@ class ActivitiesBox(hippo.CanvasBox):
self._invites = self._shell_model.get_invites()
self.tray = HTray()
- self.append(hippo.CanvasWidget(widget=self.tray))
+ self.append(hippo.CanvasWidget(widget=self.tray), hippo.PACK_EXPAND)
self.tray.show()
registry = activity.get_registry()
@@ -87,8 +87,7 @@ class ActivitiesBox(hippo.CanvasBox):
self.remove_invite(invite)
def _activity_removed_cb(self, item):
- index = self.tray.get_item_index(item)
- self.tray.remove_item(index)
+ self.tray.remove_item(item)
def _activity_added_cb(self, activity_registry, activity_info):
self.add_activity(activity_info)
diff --git a/shell/view/frame/frame.py b/shell/view/frame/frame.py
index 2582fe6..e87b939 100644
--- a/shell/view/frame/frame.py
+++ b/shell/view/frame/frame.py
@@ -222,7 +222,7 @@ class Frame(object):
panel = self._create_panel(gtk.POS_BOTTOM)
box = ActivitiesBox(self._shell)
- panel.append(box)
+ panel.append(box, hippo.PACK_EXPAND)
return panel
diff --git a/sugar/graphics/tray.py b/sugar/graphics/tray.py
index 53a72fb..fc6bb14 100644
--- a/sugar/graphics/tray.py
+++ b/sugar/graphics/tray.py
@@ -18,6 +18,7 @@
import gobject
import gtk
+from sugar.graphics import style
from sugar.graphics.toolbutton import ToolButton
from sugar.graphics.icon import Icon
@@ -51,6 +52,11 @@ class _TrayViewport(gtk.Viewport):
new_value = adj.value - self.allocation.width
adj.value = max(adj.lower, new_value)
+ def do_size_request(self, requisition):
+ child_requisition = self.child.size_request()
+ requisition[0] = 0
+ requisition[1] = child_requisition[1]
+
def do_get_property(self, pspec):
if pspec.name == 'can-scroll':
return self._can_scroll
@@ -66,18 +72,24 @@ class _TrayViewport(gtk.Viewport):
self._can_scroll = can_scroll
self.notify('can-scroll')
+class _TrayScrollButton(gtk.Button):
+ def __init__(self, icon_name):
+ gobject.GObject.__init__(self)
+
+ self.set_relief(gtk.RELIEF_NONE)
+ self.set_size_request(style.GRID_CELL_SIZE, style.GRID_CELL_SIZE)
+
+ icon = Icon(icon_name = icon_name,
+ icon_size=gtk.ICON_SIZE_SMALL_TOOLBAR)
+ self.set_image(icon)
+ icon.show()
+
class HTray(gtk.HBox):
def __init__(self, **kwargs):
gobject.GObject.__init__(self, **kwargs)
- self._scroll_left = gtk.Button()
- self._scroll_left.set_relief(gtk.RELIEF_NONE)
+ self._scroll_left = _TrayScrollButton('go-left')
self._scroll_left.connect('clicked', self._scroll_left_cb)
-
- icon = Icon(icon_name='go-left', icon_size=gtk.ICON_SIZE_MENU)
- self._scroll_left.set_image(icon)
- icon.show()
-
self.pack_start(self._scroll_left, False)
self._viewport = _TrayViewport()
@@ -86,14 +98,8 @@ class HTray(gtk.HBox):
self.pack_start(self._viewport)
self._viewport.show()
- self._scroll_right = gtk.Button()
- self._scroll_right.set_relief(gtk.RELIEF_NONE)
+ self._scroll_right = _TrayScrollButton('go-right')
self._scroll_right.connect('clicked', self._scroll_right_cb)
-
- icon = Icon(icon_name='go-right', icon_size=gtk.ICON_SIZE_MENU)
- self._scroll_right.set_image(icon)
- icon.show()
-
self.pack_start(self._scroll_right, False)
def _viewport_can_scroll_changed_cb(self, viewport, pspec):