From dd8ca024254341258a9e54c253c080f25be6f9cd Mon Sep 17 00:00:00 2001 From: Florian Müllner Date: Tue, 14 May 2013 16:55:08 +0000 Subject: PopupMenuManager: Fix child menus Since commit c84dc6254d2d65c, popup menus are closed automatically when another menu opens (to catch the case where a menu is opened by keyboard shortcut, which wasn't handled before). However in the case of child menus, both child and parent are expected to be visible, so handle this case explicitly. https://bugzilla.gnome.org/show_bug.cgi?id=699678 --- diff --git a/js/ui/popupMenu.js b/js/ui/popupMenu.js index fc37dd8..ab6c795 100644 --- a/js/ui/popupMenu.js +++ b/js/ui/popupMenu.js @@ -2124,7 +2124,7 @@ const PopupMenuManager = new Lang.Class({ _onMenuOpenState: function(menu, open) { if (open) { - if (this.activeMenu) + if (this.activeMenu && !this.activeMenu.isChildMenu(menu)) this.activeMenu.close(BoxPointer.PopupAnimation.FADE); this._grabHelper.grab({ actor: menu.actor, modal: true, focus: menu.sourceActor, onUngrab: Lang.bind(this, this._closeMenu, menu) }); -- cgit v0.9.1