瀏覽代碼

WindowServer: Don't close menu when clicking on item with submenu (#5239)

When clicking on a menu item with a submenu, don't close the menu.
DragonAlex98 4 年之前
父節點
當前提交
885974fc3c
共有 1 個文件被更改,包括 7 次插入0 次删除
  1. 7 0
      Userland/Services/WindowServer/MenuManager.cpp

+ 7 - 0
Userland/Services/WindowServer/MenuManager.cpp

@@ -242,6 +242,13 @@ void MenuManager::handle_mouse_event(MouseEvent& mouse_event)
             }
             }
 
 
             if (mouse_event.type() == Event::MouseDown) {
             if (mouse_event.type() == Event::MouseDown) {
+                for (auto& menu : m_open_menu_stack) {
+                    if (!menu)
+                        continue;
+                    if (!menu->menu_window()->rect().contains(mouse_event.position()))
+                        continue;
+                    return;
+                }
                 close_bar();
                 close_bar();
                 topmost_menu->set_window_menu_open(false);
                 topmost_menu->set_window_menu_open(false);
             }
             }