Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGonzalo Odiard <godiard@gmail.com>2011-07-12 19:15:24 (GMT)
committer Simon Schampijer <simon@schampijer.de>2011-07-15 16:58:21 (GMT)
commit3a81ba74385881b8638e800cdfdbb73a3708e7af (patch)
tree5e6c3bc175e862ceeeb015cdc2e0cbd067d09962
parentaadead2664c26d6340e80442ca94bf8564d8b616 (diff)
Sugar-toolkit: Pack page in ToolbarButton when is connected to the window - OLPC #10930
To add the accelerator to the ToolButton the activity must have set the 'sugar-accel-group' before. The patch does make the ToolbarButton listen to the 'hierarchy-changed' signal and repack itself accordingly. Since the ToolButtons of the subtoolbar do listen to 'hierarchy-changed' as well to set the accelerator they will set it accordingly. This fixes the accelerators for new-style-toolbar activities like Terminal, TurtleArt and Paint, more info in #10930. Signed-by-off: Gonzalo Odiard <gonzalo@laptop.org> Acked-by: Simon Schampijer <simon@laptop.org>
-rw-r--r--src/sugar/graphics/toolbarbox.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/sugar/graphics/toolbarbox.py b/src/sugar/graphics/toolbarbox.py
index b674e8d..2f455f5 100644
--- a/src/sugar/graphics/toolbarbox.py
+++ b/src/sugar/graphics/toolbarbox.py
@@ -36,6 +36,15 @@ class ToolbarButton(ToolButton):
self.connect('clicked',
lambda widget: self.set_expanded(not self.is_expanded()))
+ self.connect('hierarchy-changed', self.__hierarchy_changed_cb)
+
+ def __hierarchy_changed_cb(self, tool_button, previous_toplevel):
+ if hasattr(self.parent, 'owner'):
+ if self.page_widget:
+ self._unparent()
+ self.parent.owner.pack_start(self.page_widget)
+ self.set_expanded(False)
+
def get_toolbar_box(self):
if not hasattr(self.parent, 'owner'):
return None