diff --git a/Userland/Services/WindowServer/MenuManager.cpp b/Userland/Services/WindowServer/MenuManager.cpp index 7b5ac31723..b506695e31 100644 --- a/Userland/Services/WindowServer/MenuManager.cpp +++ b/Userland/Services/WindowServer/MenuManager.cpp @@ -168,7 +168,7 @@ void MenuManager::handle_mouse_event(MouseEvent& mouse_event) bool event_is_inside_current_menu = window->rect().contains(mouse_event.position()); if (event_is_inside_current_menu) { WindowManager::the().set_hovered_window(window); - WindowManager::the().deliver_mouse_event(*window, mouse_event, true); + WindowManager::the().deliver_mouse_event(*window, mouse_event); return; } @@ -204,7 +204,7 @@ void MenuManager::handle_mouse_event(MouseEvent& mouse_event) if (!menu->menu_window()->rect().contains(mouse_event.position())) continue; WindowManager::the().set_hovered_window(menu->menu_window()); - WindowManager::the().deliver_mouse_event(*menu->menu_window(), mouse_event, true); + WindowManager::the().deliver_mouse_event(*menu->menu_window(), mouse_event); break; } } diff --git a/Userland/Services/WindowServer/WindowManager.cpp b/Userland/Services/WindowServer/WindowManager.cpp index b72a5f706e..9783b2a799 100644 --- a/Userland/Services/WindowServer/WindowManager.cpp +++ b/Userland/Services/WindowServer/WindowManager.cpp @@ -1020,7 +1020,7 @@ bool WindowManager::process_ongoing_drag(MouseEvent& event) if (auto* window = hovered_window()) { event.set_drag(true); event.set_mime_data(*m_dnd_mime_data); - deliver_mouse_event(*window, event, false); + deliver_mouse_event(*window, event); } else { set_accepts_drag(false); } @@ -1171,11 +1171,11 @@ void WindowManager::process_event_for_doubleclick(Window& window, MouseEvent& ev metadata.last_position = event.position(); } -void WindowManager::deliver_mouse_event(Window& window, MouseEvent const& event, bool process_double_click) +void WindowManager::deliver_mouse_event(Window& window, MouseEvent const& event) { auto translated_event = event.translated(-window.position()); window.dispatch_event(translated_event); - if (process_double_click && translated_event.type() == Event::MouseUp) { + if (translated_event.type() == Event::MouseUp) { process_event_for_doubleclick(window, translated_event); if (translated_event.type() == Event::MouseDoubleClick) window.dispatch_event(translated_event); @@ -1194,7 +1194,7 @@ bool WindowManager::process_ongoing_active_input_mouse_event(MouseEvent const& e // // This prevents e.g. moving on one window out of the bounds starting // a move in that other unrelated window, and other silly shenanigans. - deliver_mouse_event(*input_tracking_window, event, true); + deliver_mouse_event(*input_tracking_window, event); if (event.type() == Event::MouseUp && event.buttons() == 0) set_automatic_cursor_tracking_window(nullptr); @@ -1278,9 +1278,8 @@ void WindowManager::process_mouse_event_for_window(HitTestResult& result, MouseE return; } - if (!window.is_automatic_cursor_tracking()) { - deliver_mouse_event(window, event, true); - } + if (!window.is_automatic_cursor_tracking()) + deliver_mouse_event(window, event); if (event.type() == Event::MouseDown) set_automatic_cursor_tracking_window(&window); @@ -1306,7 +1305,7 @@ void WindowManager::process_mouse_event(MouseEvent& event) // in the next step. for_each_visible_window_from_front_to_back([&](Window& window) { if (window.is_automatic_cursor_tracking() && &window != automatic_cursor_tracking_window()) - deliver_mouse_event(window, event, false); + deliver_mouse_event(window, event); return IterationDecision::Continue; }); diff --git a/Userland/Services/WindowServer/WindowManager.h b/Userland/Services/WindowServer/WindowManager.h index 7186828a73..c35ebd3a56 100644 --- a/Userland/Services/WindowServer/WindowManager.h +++ b/Userland/Services/WindowServer/WindowManager.h @@ -210,7 +210,7 @@ public: bool is_theme_overridden() { return m_theme_overridden; } bool set_hovered_window(Window*); - void deliver_mouse_event(Window&, MouseEvent const&, bool process_double_click); + void deliver_mouse_event(Window&, MouseEvent const&); void did_popup_a_menu(Badge