Hi, On 05/23/2014 05:00 PM, Jasper St. Pierre wrote: > Any reason you switched the order of these two if statements around?
Yes to prefer vertical scrolling when both dx and dy meet the threshold on the initial 2 finger motion, as is stated in the commit message. Regards, Hans > > > On Fri, May 23, 2014 at 10:06 AM, Hans de Goede <hdego...@redhat.com> wrote: > >> We pin scrolling to the initial direction, so a 2 finger scroll starting >> in the vertical direction, will from then on only generate vertical scroll >> events, and the same for horizontal. >> >> But if the first 2 finger motion is diagonal, then we go into a diagonal >> scrolling mode where we post both horizontal and vertical scrolling events. >> >> This is inconsistent, if we want to allow both at the same time (which we >> don;t), we should always allow both, not only when the first motion is >> diagonal. >> >> This commit fixes things so that if the initial motion is diagonal, we go >> into vertical scrolling mode as that is what the user most likely wants. >> >> Signed-off-by: Hans de Goede <hdego...@redhat.com> >> --- >> src/evdev-mt-touchpad.c | 8 +++----- >> 1 file changed, 3 insertions(+), 5 deletions(-) >> >> diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c >> index f28cd13..e7943f6 100644 >> --- a/src/evdev-mt-touchpad.c >> +++ b/src/evdev-mt-touchpad.c >> @@ -465,14 +465,12 @@ tp_post_twofinger_scroll(struct tp_dispatch *tp, >> uint64_t time) >> >> if (tp->scroll.state == SCROLL_STATE_NONE) { >> /* Require at least one px scrolling to start */ >> - if (dx <= -1.0 || dx >= 1.0) { >> - tp->scroll.state = SCROLL_STATE_SCROLLING; >> - tp->scroll.direction |= (1 << >> LIBINPUT_POINTER_AXIS_HORIZONTAL_SCROLL); >> - } >> - >> if (dy <= -1.0 || dy >= 1.0) { >> tp->scroll.state = SCROLL_STATE_SCROLLING; >> tp->scroll.direction |= (1 << >> LIBINPUT_POINTER_AXIS_VERTICAL_SCROLL); >> + } else if (dx <= -1.0 || dx >= 1.0) { >> + tp->scroll.state = SCROLL_STATE_SCROLLING; >> + tp->scroll.direction |= (1 << >> LIBINPUT_POINTER_AXIS_HORIZONTAL_SCROLL); >> } >> >> if (tp->scroll.state == SCROLL_STATE_NONE) >> -- >> 1.9.3 >> >> _______________________________________________ >> wayland-devel mailing list >> wayland-devel@lists.freedesktop.org >> http://lists.freedesktop.org/mailman/listinfo/wayland-devel >> > > > _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel