From 5bfc64d9bef4c5cf202acfd9502133dd3238ec8c Mon Sep 17 00:00:00 2001 From: Marco Pesenti Gritti Date: Mon, 16 Apr 2007 08:36:15 +0000 Subject: Always center the owner in the home views --- (limited to 'shell') diff --git a/shell/model/BuddyModel.py b/shell/model/BuddyModel.py index a06a728..2339832 100644 --- a/shell/model/BuddyModel.py +++ b/shell/model/BuddyModel.py @@ -84,6 +84,11 @@ class BuddyModel(gobject.GObject): def get_buddy(self): return self._buddy + def is_owner(self): + if not self._buddy: + return False + return self._buddy.props.owner + def is_present(self): if self._buddy: return True diff --git a/shell/view/home/FriendsBox.py b/shell/view/home/FriendsBox.py index 6f1cdb7..71b9026 100644 --- a/shell/view/home/FriendsBox.py +++ b/shell/view/home/FriendsBox.py @@ -24,7 +24,7 @@ from sugar.graphics import units from view.home.MyIcon import MyIcon from view.home.FriendView import FriendView -class FriendsBox(SpreadBox, hippo.CanvasItem): +class FriendsBox(SpreadBox): __gtype_name__ = 'SugarFriendsBox' def __init__(self, shell, menu_shell): SpreadBox.__init__(self, background_color=0xe2e2e2ff) @@ -34,7 +34,7 @@ class FriendsBox(SpreadBox, hippo.CanvasItem): self._friends = {} self._my_icon = MyIcon(units.LARGE_ICON_SCALE) - self.append(self._my_icon, hippo.PACK_FIXED) + self.set_center_item(self._my_icon) friends = self._shell.get_model().get_friends() @@ -56,10 +56,3 @@ class FriendsBox(SpreadBox, hippo.CanvasItem): def _friend_removed_cb(self, data_model, key): self.remove_item(self._friends[key]) del self._friends[key] - - def do_allocate(self, width, height, origin_changed): - SpreadBox.do_allocate(self, width, height, origin_changed) - - [icon_width, icon_height] = self._my_icon.get_allocation() - self.set_position(self._my_icon, (width - icon_width) / 2, - (height - icon_height) / 2) diff --git a/shell/view/home/MeshBox.py b/shell/view/home/MeshBox.py index 218a44d..fa85b03 100644 --- a/shell/view/home/MeshBox.py +++ b/shell/view/home/MeshBox.py @@ -278,7 +278,10 @@ class MeshBox(SpreadBox): def _add_alone_buddy(self, buddy_model): icon = BuddyIcon(self._shell, self._menu_shell, buddy_model) - self.add_item(icon) + if buddy_model.is_owner(): + self.set_center_item(icon) + else: + self.add_item(icon) self._buddies[buddy_model.get_key()] = icon -- cgit v0.9.1