diff --git a/openbox/menuframe.c b/openbox/menuframe.c index f8c0b055..30c332ce 100644 --- a/openbox/menuframe.c +++ b/openbox/menuframe.c @@ -689,8 +689,6 @@ gboolean menu_frame_show_submenu(ObMenuFrame *self, ObMenuFrame *parent, if (menu_frame_is_visible(self)) return TRUE; - if (!menu_frame_show(self)) - return FALSE; self->monitor = parent->monitor; self->parent = parent; @@ -701,6 +699,9 @@ gboolean menu_frame_show_submenu(ObMenuFrame *self, ObMenuFrame *parent, menu_frame_hide(parent->child); parent->child = self; + if (!menu_frame_show(self)) + return FALSE; + menu_frame_place_submenu(self); menu_frame_move_on_screen(self, &dx, &dy);