On Wed, Dec 21, 2011 at 12:34 PM, Tiago Vignatti <vigna...@freedesktop.org> wrote: > From: Tiago Vignatti <tiago.vigna...@intel.com> > > Hi, > > Following Kristian suggestions, I updated the patchset with the following: > - driver now accumulates input coordinates to send along touch_down > - updated the protocol touch_down event with surface field, meaning the focus > surface of a touch device > - compositor now uses a touch_focus pointer (self explicative), where it's > picked when the first finger is down; all further events go there until it > gets released > - not doing pointer emulation for now; that will come next. > > I still using the cairo image as PoC. So the client surfaces now are picked > correctly, giving a quite smooth effect for pinch/zoom gesture introduced on > the last patches. My tree rebased with latest master branch is here: > > http://cgit.freedesktop.org/~vignatti/wayland-demos/log/?h=multitouch-v2 > > I'll be in vacation for two weeks, starting from tomorrow. See y'all in the > next year and enjoy the holiday. Peace!
There are still a lot of problems with these patches, but I want to move forward on this. I picked the first two patches and edited them to get the basics into shape, then added a few fixes on top. The evdev part was mostly fine, but the event delivery had a number of problems: - we can't overwrite device->x,y, that's the pointer position - we have to deliver the surfaces relative coordinates, not the global coordinates to clients - touch_up was never delivered since you clear touch_focus_resource just before testing it for NULL Moreover, we need to track each touchpoint position in the evdev part so that when we get only ABS_MT_POSITION_X (or Y), we have the other coordinate. Finally, we need to handle losing both the touch focus surface or the input device client resource without crashing. Most of these issues are obvious if you look at the event stream (use WAYLAND_DEBUG=1) and the missing transformation to surface coordinates would have been clear with a simple multi-touch-paint test client, like the one I added. Kristian _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel