LibWeb+UI: Add an explicit IPC to handle mouse leave events

The faux position we created here is adjusted by the device pixel ratio
later on, which would invoke integer overflow on screens with a DPR
greater than 1.

Instead of creating special data for a mouse move event, let's just add
an explicit leave event handler.
This commit is contained in:
Timothy Flynn 2025-07-28 12:57:31 -04:00 committed by Andreas Kling
parent 8600925713
commit 67cc02ab59
Notes: github-actions[bot] 2025-07-28 19:27:37 +00:00
11 changed files with 66 additions and 7 deletions

View file

@ -279,6 +279,8 @@ void EventLoop::process_input_events() const
return page.handle_mouseup(mouse_event.position, mouse_event.screen_position, mouse_event.button, mouse_event.buttons, mouse_event.modifiers);
case MouseEvent::Type::MouseMove:
return page.handle_mousemove(mouse_event.position, mouse_event.screen_position, mouse_event.buttons, mouse_event.modifiers);
case MouseEvent::Type::MouseLeave:
return page.handle_mouseleave();
case MouseEvent::Type::MouseWheel:
return page.handle_mousewheel(mouse_event.position, mouse_event.screen_position, mouse_event.button, mouse_event.buttons, mouse_event.modifiers, mouse_event.wheel_delta_x, mouse_event.wheel_delta_y);
case MouseEvent::Type::DoubleClick: