[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

--- Comment #13 from Peter Hutterer  ---
[This was typed in response to comment #8, but bugzilla didn't take it first
time round]

Also look into bug 101139, that is the current bug for the "way too fast"
behaviour.

As for debugging this in general: touchpad_accel_profile_linear() is the
acceleration profile and the returned factor is applied to the deltas. The
threshold and incline are affected by the configured speed, see
touchpad_accelerator_set_speed() which is called when you change the property.

Note that if you're using libinput debug-events or any other tools, the context
is *not* the one your X server has, it's always a new context and changes don't
go across. Think of it as two different processes reading the same byte stream,
you can change how you process data in one process but the other one still
receives the unmodified byte stream and is thus unaffected. So any changes in X
don't affect libinput debug-events and vice versa.

libinput debug-gui has a hidden feature, cursor keys up/down change the pointer
acceleration by ±0.1 with each press. That's going to be helpful for testing
because you see the immediate effects on the cursor.

Also note that in calculate_acceleration() we're using simpson's rule to smooth
things a bit. So that may affect things a bit as well.

> I think sharing a flag with other quirks causes problems

It shouldn't, the flags are just that and libinput doesn't care about them
beyond the usual handling. That particular T450 flag is only used in one place,
so re-using it is safe.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

--- Comment #12 from Peter Hutterer  ---
*please* trim your emails. Have a look at the URL of this bug report to see
what the bug has become...

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

Peter Hutterer  changed:

   What|Removed |Added

 Attachment #138745|attachment-23212-0.html |email garbage
description||
 Attachment #138745|0   |1
is obsolete||

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

--- Comment #11 from Tim Richardson  ---
Thanks, I will take those actions, including learning a bit more about git.
I will also see if I over-reacted by making a separate udev rule for the
P50. Before I split it, the touchpad became unusable after a reboot; I
assumed that other quirks somewhere were being applied which were causing
the trouble (so my hypothesis is not that the udev properties need to be
different, but that somewhere other quirks were being activated because a
bunch of different ThinkPads were grouped together). However, these
problems may have been due to some of my other exploratory changes (since
backed out since none of them helped). You're right: the only active change
is the rejection of non-touch events which you already coded, plus the use
of a dedicated P50 rule (I thought you created that for the P50 bug report
which is why I wasn't concerned about a specific P50 rule excluding other
hardware from the non-touch event rejection).

The touchpad is still a poor experience at slow acceleration settings
(<-0.7) but it is considerably improved at xinput acceleration settings
>0.5 (previously close to unusable, but not any more, it's actually
pleasant to use at last).


On 11 April 2018 at 10:42,  wrote:

> *Comment # 10  on
> bug 105963  from Peter
> Hutterer  *
>
> Comment on attachment 138744 
>  [details] 
>  [review] 
> 
> patch for P50
>
> Review of attachment 138744 
>  [details] 
>  [review] 
> :
> -
>
> Thanks, overall - I don't know why this patch works but the previous one
> didn't. Functionally they are (or should be) exactly the same on your 
> touchpad.
>
> The (1 << 28) is a definite bug that needs to be fixed, please submit a
> separate patch for that.
>
> ::: src/evdev-mt-touchpad.c
> @@ +106,4 @@>  * is reset whenever a new finger is down, so we'd be 
> resetting the
> >  * speed and failing.
> >  */
> > +   if (t->history.count < HISTORY_COUNT_THRESHOLD) {
>
> fwiw, I haven't used a const here because we only use it in one place. So
> having the number right here makes it more obvious what the value is. There's
> no strict rule for this, there is some gut feeling involved :)
>
> Same goes for the NON_MOTION_EVENT_COUNT
>
> @@ +435,4 @@>
> > if (t->history.count <= 1)
> > return zero;
> > +   
>
> this and a whole bunch of others look like detritus and erroneous whitespace
> being introduced. I recommend looking into git add -p, this saves you from
> adding spurious hunks.
>
> @@ +1411,4 @@>   reset that touch to non-dirty effectively swallowing 
> that event
> >and restarting with the next event again.
> >  */
> > +   if (tp->device->model_flags & EVDEV_MODEL_LENOVO_P50_TOUCHPAD) {
>
> this would break all the touchpads that currently rely on this setting. But I
> don't quite get why this is even needed, the flag name itself just doesn't
> matter.
>
> ::: src/evdev.h
> @@ -126,4 @@> EVDEV_MODEL_LOGITECH_MARBLE_MOUSE = (1 << 26),
> > EVDEV_MODEL_TABLET_NO_PROXIMITY_OUT = (1 << 27),
> > EVDEV_MODEL_MS_NANO_TRANSCEIVER = (1 << 28),
> > -   EVDEV_MODEL_TABLET_NO_TILT = (1 << 28),
>
> oh crap, that's a real bug (both flags having 1<<28). Can you split this into 
> a
> separate commit please and I'll get it merged.
>
> ::: udev/90-libinput-model-quirks.hwdb
> @@ +220,5 @@> +
> > +# Lenovo P50
> > +libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*:pvrThinkPadP50*
> > + LIBINPUT_MODEL_LENOVO_P50_TOUCHPAD=1
> > + LIBINPUT_ATTR_PALM_PRESSURE_THRESHOLD=150
>
> I really don't understand why this could be needed. The udev properties you 
> set
> here are the same as the ones with the previous patch (compare udevadm info
> /sys/class/input/eventX output to be sure). Even the palm threshold is the
> same, so all that happens here is a renaming of flags but the functional 
> effect
> should be the same before and after and this patch is effectively a noop (for
> your touchpad, it breaks all the ones below :)
>
> ::: .gitignore
> @@ +16,5 @@> +/help/
> > +/.cproject
> > +/.project
> > +/tim_notes.txt
> > +.externalToolBuilders
>
> can't merge those, too specific. Please remove from the patch, thanks.
>
> --
> You are receiving this mail because:
>
>- You reported the bug.
>
>

-- 
You are receiving this mail because:
You are the assignee for 

[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

--- Comment #10 from Peter Hutterer  ---
Comment on attachment 138744
  --> https://bugs.freedesktop.org/attachment.cgi?id=138744
patch for P50

Review of attachment 138744:
-

Thanks, overall - I don't know why this patch works but the previous one
didn't. Functionally they are (or should be) exactly the same on your touchpad.

The (1 << 28) is a definite bug that needs to be fixed, please submit a
separate patch for that.

::: src/evdev-mt-touchpad.c
@@ +106,4 @@
>* is reset whenever a new finger is down, so we'd be resetting the
>* speed and failing.
>*/
> + if (t->history.count < HISTORY_COUNT_THRESHOLD) {

fwiw, I haven't used a const here because we only use it in one place. So
having the number right here makes it more obvious what the value is. There's
no strict rule for this, there is some gut feeling involved :)

Same goes for the NON_MOTION_EVENT_COUNT

@@ +435,4 @@
>  
>   if (t->history.count <= 1)
>   return zero;
> + 

this and a whole bunch of others look like detritus and erroneous whitespace
being introduced. I recommend looking into git add -p, this saves you from
adding spurious hunks.

@@ +1411,4 @@
>  reset that touch to non-dirty effectively swallowing that event
>  and restarting with the next event again.
>*/
> + if (tp->device->model_flags & EVDEV_MODEL_LENOVO_P50_TOUCHPAD) {

this would break all the touchpads that currently rely on this setting. But I
don't quite get why this is even needed, the flag name itself just doesn't
matter.

::: src/evdev.h
@@ -126,4 @@
>   EVDEV_MODEL_LOGITECH_MARBLE_MOUSE = (1 << 26),
>   EVDEV_MODEL_TABLET_NO_PROXIMITY_OUT = (1 << 27),
>   EVDEV_MODEL_MS_NANO_TRANSCEIVER = (1 << 28),
> - EVDEV_MODEL_TABLET_NO_TILT = (1 << 28),

oh crap, that's a real bug (both flags having 1<<28). Can you split this into a
separate commit please and I'll get it merged.

::: udev/90-libinput-model-quirks.hwdb
@@ +220,5 @@
> + 
> +# Lenovo P50
> +libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*:pvrThinkPadP50*
> + LIBINPUT_MODEL_LENOVO_P50_TOUCHPAD=1
> + LIBINPUT_ATTR_PALM_PRESSURE_THRESHOLD=150

I really don't understand why this could be needed. The udev properties you set
here are the same as the ones with the previous patch (compare udevadm info
/sys/class/input/eventX output to be sure). Even the palm threshold is the
same, so all that happens here is a renaming of flags but the functional effect
should be the same before and after and this patch is effectively a noop (for
your touchpad, it breaks all the ones below :)

::: .gitignore
@@ +16,5 @@
> +/help/
> +/.cproject
> +/.project
> +/tim_notes.txt
> +.externalToolBuilders

can't merge those, too specific. Please remove from the patch, thanks.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

Peter Hutterer  changed:

   What|Removed |Added

 Attachment #138744|0   |1
   is patch||

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

Peter Hutterer  changed:

   What|Removed |Added

 Attachment #138744|application/mbox|text/plain
  mime type||

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

--- Comment #9 from Tim Richardson  ---
Created attachment 138744
  --> https://bugs.freedesktop.org/attachment.cgi?id=138744&action=edit
patch for P50

With a setting such as 
 xinput --set-prop "$DEVICE" "libinput Accel Speed"  1

this patch works pretty well for the P50

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

Peter Hutterer  changed:

   What|Removed |Added

 Attachment #138720|attachment-2437-0.html  |email garbage
description||
 Attachment #138720|0   |1
is obsolete||

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 104990] XPS13 L322X touchpad laggy

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=104990

--- Comment #17 from Peter Hutterer  ---
It's a so-called schmitt trigger, pressure needs to go above "down" to be
detected as touch and below "up" to be released again. down > up to make the
touch more resilient.

libinput:name:*CyPS/2 Cypress Trackpad:dmi:*svnDell:*pnXPSL322X*
 LIBINPUT_ATTR_PRESSURE_RANGE=105:60
 LIBINPUT_ATTR_PALM_PRESSURE_THRESHOLD=230

Something like this should work. Check /sys/class/dmi/id/modalias and adjust
the dmi bit accordingly, make sure the svn and pn bits match.
https://wayland.freedesktop.org/libinput/doc/latest/faq.html#faq_hwdb_changes

I'll need you to figure out that hwdb match though, I can't test this locally
without the same machine so anything I'd merge is prone to be buggy.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

--- Comment #8 from Tim Richardson  ---
the best of fixing this will be different acceleration behaviour, to mimic
windows. I can't get smooth movement any other way, I think. 
when I do 

 xinput --set-prop "$DEVICE" "libinput Accel Speed"  -.9

I get very slow pointer movement, as expected .But I can't see where in
libinput this setting influences behaviour. 
printf diagnostics in 
touchpad_accel_profile_linear
don't seem to show any change between a setting of -0.9 and 0 although the
pointer behaviour is really different.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 105974] double tap on touchpad isn't recognized as double click on ubuntu 18.04 bionic

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105974

Bug ID: 105974
   Summary: double tap on touchpad isn't recognized as double
click on ubuntu 18.04 bionic
   Product: Wayland
   Version: unspecified
  Hardware: Other
OS: other
Status: NEW
  Severity: normal
  Priority: medium
 Component: libinput
  Assignee: wayland-bugs@lists.freedesktop.org
  Reporter: 1762...@trash-mail.com

Created attachment 138740
  --> https://bugs.freedesktop.org/attachment.cgi?id=138740&action=edit
lsusb output of the device

this is a copy of:
https://bugs.launchpad.net/ubuntu/+source/libinput/+bug/1762536

i have a Logitech K400 wireless keyboard-touchpad-combo.
https://secure.logitech.com/assets/46733/19/wireless-touch-keyboard-k400r.jpg
ID 046d:c52b Logitech, Inc. Unifying Receiver

up to ubuntu 17.10.1, i hadn't any issues with it using ubuntu.
since ubuntu 18.04 (daily-build / beta2) when do a double tap to the touchpad,
it will always be recognized as single click only.

i tried to use ubuntu 18.04 on my notebook and used the notebook's touchpad
there.
there, ubuntu 18.04 is recognizing a double tap as double click, when using the
notebook's touchpad.

if i connect the Logitek K400 keyboard-touchpad-combo to the notebook and use
the K400's touchpad, a double tap is still recognized as single click only.

i tried to change touchpad settings in the ubuntu's settings panel without
getting double tap working.
then i installed gnome-tweak-tools and changes touchpad settings in the
gnome-tweaks settings panel. aslo without getting double tap recognized as
double click.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 104990] XPS13 L322X touchpad laggy

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=104990

--- Comment #16 from Sean Lanigan  ---
I should note though that I don't really understand the full implications of
the lower and upper thresholds - does "down" translate to a click? Or is "down"
the minimum pressure required to actually move the cursor? If the latter, the
values are much too high - I was thinking it was the former.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 104990] XPS13 L322X touchpad laggy

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=104990

--- Comment #15 from Sean Lanigan  ---
I also have a Dell XPS13 L322X, I've followed the steps linked to and have
found that using 'libinput measure touchpad-pressure --touch-thresholds=105:60
--palm-threshold=230' seemed to work well.

I was not able to format it into the hwdb file, however, so couldn't actually
test it on my machine.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

--- Comment #7 from Tim Richardson  ---
Peter, don't deploy the P50 changes. After a reboot, the touchpad was unusable.
I think sharing a flag with other quirks causes problems. In my branch I have
created a separate P50 flag.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

--- Comment #6 from Tim Richardson  ---
thanks. I'm having fun working it all out. There is no problem with
scrolling and the sudden movements are better. The acceleration factor
needs to be much slower at slow movements, and the pressure sensitivity may
need tweaking. I'll keep fiddling until it works like Windows. Then we can
see how the configuration can work.

On 10 April 2018 at 17:57,  wrote:

> *Comment # 5  on
> bug 105963  from Peter
> Hutterer  *
>
> /lib isn't a symlink to /usr/lib? interesting... Anyway, you can pass
> -Dudev-dir=/lib/udev/ at configure time to install to the right directory.
>
> --
> You are receiving this mail because:
>
>- You reported the bug.
>
>

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs


[Wayland-bugs] [Bug 105963] Lenovo P50 - Slow fine touchpad movement makes it jump (bug 2)

2018-04-10 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=105963

--- Comment #5 from Peter Hutterer  ---
/lib isn't a symlink to /usr/lib? interesting... Anyway, you can pass
-Dudev-dir=/lib/udev/ at configure time to install to the right directory.

-- 
You are receiving this mail because:
You are the assignee for the bug.___
wayland-bugs mailing list
wayland-bugs@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-bugs