From 0810c2b873a754d78c3d269a279f40e2f7ade035 Mon Sep 17 00:00:00 2001 From: Zufu Liu Date: Mon, 14 Oct 2024 08:18:29 +1100 Subject: Bug [#2449]. Fix direction of horizontal scrolling with touchpad. --- win32/ScintillaWin.cxx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'win32') diff --git a/win32/ScintillaWin.cxx b/win32/ScintillaWin.cxx index 5fd06cd16..7242f590d 100644 --- a/win32/ScintillaWin.cxx +++ b/win32/ScintillaWin.cxx @@ -1645,7 +1645,11 @@ sptr_t ScintillaWin::MouseMessage(unsigned int iMessage, uptr_t wParam, sptr_t l MouseWheelDelta &wheelDelta = (iMessage == WM_MOUSEHWHEEL) ? horizontalWheelDelta : verticalWheelDelta; if (wheelDelta.Accumulate(wParam)) { - const int charsToScroll = charsPerScroll * wheelDelta.Actions(); + int charsToScroll = charsPerScroll * wheelDelta.Actions(); + if (iMessage == WM_MOUSEHWHEEL) { + // horizontal scroll is in reverse direction + charsToScroll = -charsToScroll; + } const int widthToScroll = static_cast(std::lround(charsToScroll * vs.aveCharWidth)); HorizontalScrollToClamped(xOffset + widthToScroll); } -- cgit v1.2.3