On Fri, Apr 17, 2015 at 06:54:13PM +0300, Dmitry Tunin wrote: > > > 17.04.2015 18:43, Benjamin Tissoires пишет: > > On Fri, Apr 17, 2015 at 10:56 AM, Dmitry Tunin <hanipouspilot@xxxxxxxxx> wrote: > >> > >> > >> 17.04.2015 17:49, Dmitry Tunin пишет: > >>> 17.04.2015 16:57, Benjamin Tissoires пишет: > >>>> On Fri, Apr 17, 2015 at 9:39 AM, Dmitry Tunin <hanipouspilot@xxxxxxxxx> wrote: > >>>>>> Hi Dmitry, > >>>>>> > >>>>>> On Fri, Apr 17, 2015 at 5:56 AM, Dmitry Tunin <hanipouspilot@xxxxxxxxx> wrote: > >>>>>>>> I noticed that myself and got some complaints like this. > >>>>>>>> https://github.com/hanipouspilot/ubuntu-fixes/issues/2 > >>>>>>>> > >>>>>>>> General issue is that when one finger is on the touchpad, movement of a second finger is ignored, if the first finger does not move. > >>>>>>>> Usually with other touchpads, when you have one finger on the touchpad and move the other, it is recognized as two-finger scrolling. > >>>>>>>> The device itself sends relative packages as normal in that case, but linux driver ignores them, until first finger is moved. > >>>>>>>> > >>>>>>>> I guess, Windows driver behaves same way. I can't test it, since I do not have Windows installed on that laptop. > >>>>>>>> > >>>>>>>> As I understood, Windows driver ignores that one finger is on button area and recognizes movement of the other as one-finger movement. > >>>>>>>> > >>>>>>>> It is clear that we do not know the full protocol or parameters of all touchpad models to have that button area always correct. > >>>>>>>> But it looks like button area is set when 3rd byte in abs package is 00. There is a good chance that it is common for all touchpad models. > >>>>>>>> > >>>>>>>> Do you have ideas how to fix it the easiest way? > >>>>>>>> > >>>>>>>> Regards, > >>>>>>>> > >>>>>>>> Dmitry > >>>>>>>> > >>>>>>> > >>>>>>> I looked at it some more and noticed that if I put one finger on touchpad, then another, then move the second one, rel packets are ignored. > >>>>>>> But if keeping both fingers on touchpad, I move the first one, rel packets work OK. > >>>>>>> This is wrong. I can't get what's wrong with the code at the moment. > >>>>>> > >>>>>> > >>>>>> It looks like your touchpad is in the mouse emulation mode, not the > >>>>>> raw touch mode. What you get is fed by the touchpad FW ans there is > >>>>>> nothing we can do in userspace to fix that. > >>>>>> That being said, there has been a lot of work with the focaltech > >>>>>> drivers in the previous kernel releases, and maybe trying a v4.0 will > >>>>>> switch your touchpad in the raw mode. > >>>>>> Once it is in raw mode, the software buttons, scrolling and gestures > >>>>>> are all treated in userspace and you will get the expected behavior. > >>>>>> > >>>>>> Cheers, > >>>>>> Benjamin > >>>>>> > >>>>> > >>>>> No, the mouse is in proprietary mode. Multitouch is supported. In emulation mode it is not supported at all. > >>>>> I am testing actually the driver from kernel 4.0. Everything works great except this strange problem, when some relative packets are ignored. > >>>>> I mentioned above the test case. Now I added some debug and trying to figure it out. But no success so far. > >>>>> > >>>>> > >>>> > >>>> If you are in absolute (raw) mode, then can you share the evemu-record > >>>> of the gesture you are trying to support? > >>>> We should be able to see what is going on and be able to pinpoint if > >>>> this is a kernel problem or a user space problem. > >>>> > >>>> Cheers, > >>>> Benjamin > >>>> > >>> > >>> Here is the record. I put one finger on the touchpad and moved the other from top to bottom. This gesture is ignored. > >>> But if I move first finger or both, it is recognized as scrolling > > > > OK, this evemu-record is clean in term of protocol handling. > > It looks like the first finger is in the middle of the touchpad. > > Besides that I do not see any problems (and this works fine on Fedora > > with libinput). > > > > It must be a user-space problem. Can you tell us which distribution > > you are using and which driver is handling the touchpad (xorg-evdev, > > xorg-synaptics, xorg-libinput, wayland, mir)? > > > > Benjamin > > I am usung Ubuntu. I guess xorg-synaptics is handling the touchpad. ok, in that case you'll need to file a bug, ideally in launchpad so we can first rule out any ubuntu-specific patches. as Benjamin said, the recording itself looks ok so this should work. You could try to give the xf86-input-synaptics driver from git a try and see if it works. either way, it doesn't look like a kernel problem at this point. Cheers, Peter -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html