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>
This commit is contained in:
parent
10580fc2a7
commit
880e60bdda
@ -36,6 +36,15 @@ class ToolbarButton(ToolButton):
|
|||||||
self.connect('clicked',
|
self.connect('clicked',
|
||||||
lambda widget: self.set_expanded(not self.is_expanded()))
|
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):
|
def get_toolbar_box(self):
|
||||||
if not hasattr(self.parent, 'owner'):
|
if not hasattr(self.parent, 'owner'):
|
||||||
return None
|
return None
|
||||||
|
Loading…
Reference in New Issue
Block a user