Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/sugar/graphics/palette.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/sugar/graphics/palette.py b/src/sugar/graphics/palette.py
index 8d19e6f..f89f260 100644
--- a/src/sugar/graphics/palette.py
+++ b/src/sugar/graphics/palette.py
@@ -201,11 +201,18 @@ class Palette(PaletteWindow):
def popdown(self, immediate=False):
if immediate:
self._secondary_anim.stop()
- self.menu.popdown()
+ self._popdown_submenus()
# to suppress glitches while later re-opening
self.set_palette_state(self.PRIMARY)
PaletteWindow.popdown(self, immediate)
+ def _popdown_submenus(self):
+ # TODO explicit hiding of subitems
+ # should be removed after fixing #1301
+ for menu_item in self.menu.get_children():
+ if menu_item.props.submenu is not None:
+ menu_item.props.submenu.popdown()
+
def on_enter(self, event):
PaletteWindow.on_enter(self, event)
self._secondary_anim.start()