1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 16:07:47 +00:00

WindowServer: Add "Natural scrolling" support

Also commonly referred to as "reverse scrolling" or "inverted
scrolling".
This commit is contained in:
Filiph Sandström 2022-11-30 13:45:35 +01:00 committed by Linus Groh
parent bef9ad4e44
commit 5a083c03a6
7 changed files with 39 additions and 1 deletions

View file

@ -70,10 +70,15 @@ void EventLoop::drain_mouse()
state.x = packet.x;
state.y = packet.y;
}
state.z += packet.z;
state.w += packet.w;
state_is_sent = false;
// Invert scroll direction if checked in the settings.
if (WindowManager::the().is_natural_scroll())
state.z -= packet.z;
else
state.z += packet.z;
if (packet.buttons != state.buttons) {
state.buttons = packet.buttons;
dbgln_if(WSMESSAGELOOP_DEBUG, "EventLoop: Mouse Button Event");