[PATCH weston 4/5] evdev: Improve touchpad support and add motion filters

Benjamin Otte otte at gnome.org
Tue May 15 08:48:53 PDT 2012

On Tue, May 15, 2012 at 5:20 PM, Chase Douglas
<chase.douglas at canonical.com> wrote:
> The real issue is when you want to have object manipulation within an
> application. Let's take smooth scrolling using a trackpad as an example.
> One approach would be to use the same acceleration for scrolling as for
> cursor motion. Scrolling should be performed by the client
> application/toolkit, so the client needs to have access to the
> acceleration algorithm.
> Further, there's a good argument to be made for splitting it out since
> there will not be one single "Wayland" compositor. Why not provide a
> library so that all compositors can benefit without reinventing the wheel?
It gets even more interesting when your application is supposed to use
the same pointer acceleration code as the compositor, but your
application wants to work with different compositors that all use
slightly different acceleration methods...

In general, I've been very unhappy about the cases where I had to
emulate acceleration myself, because (a) it depends on the server and
(b) it requires lots of extra work where everything else just works.
The examples I tried were swipes (for scrolling or to move the slider
of a GtkPaned or GtkScrollbar) and the pinch/pan gestures used to
navigate web pages on tablets or phones, but I'm sure people can come
up with myriads of examples here.

With the newer interaction patterns on pointer devices, I'm also very
interested in not only position, but also velocity and acceleration to
enable the kinetic behavior that people expect on those devices. And
I'm pretty sure if all the running applications and the compositor
feel the same way, no matter if you throw a window, a DND object, a
scrolled area or a slider to the left and no matter if you throw it
with a mouse, via a touchpad or directly with your finger.


More information about the wayland-devel mailing list