Range: Fix inverted horizontal scroll wheel events

Bug 737175 aimed to ensure that scrolling up on a horizontal range would
result in its value increasing, as that’s what users intuitively expect.
However, its commit 416c370da1 meant that,
if the event gives scroll deltas, we inverted our delta unconditionally.

So it broke horizontal scrolling: scrolling left moved the slider right…

We must only invert if using dy as delta. dx already has the right sign,
so inverting it was wrong.

https://bugzilla.gnome.org/show_bug.cgi?id=788905
This commit is contained in:
Daniel Boles 2017-10-14 18:45:20 +01:00 committed by Daniel Boles
parent d2f027a9d9
commit 29b8cfc952

View File

@ -2313,7 +2313,7 @@ gtk_range_scroll_controller_scroll (GtkEventControllerScroll *scroll,
#endif
if (gtk_orientable_get_orientation (GTK_ORIENTABLE (range)) == GTK_ORIENTATION_HORIZONTAL)
delta = - (dx ? dx : dy) * scroll_unit;
delta = (dx ? dx : -dy) * scroll_unit;
else
delta = dy * scroll_unit;