Bug 61997

Summary: [regression] Absolute pointer motion values are treated as relative motion values on DRM backend
Product: Wayland Reporter: U. Artie Eoff <ullysses.a.eoff>
Component: westonAssignee: Wayland bug list <wayland-bugs>
Status: VERIFIED FIXED QA Contact:
Severity: critical    
Priority: medium    
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: compositor: Support notifying with absolute position too

Description U. Artie Eoff 2013-03-08 02:51:34 UTC
When an absolute pointer motion event is handled in the drm backend, it's requested absolute x,y values are passed to notify_motion() and treated as a relative x,y values.

For example, I have a test program that creates an absolute uinput pointer device.  Weston detects the device correctly as:

[18:34:57.184] input device MY UINPUT ABS POINTER, /dev/input/event10 is a pointer caps = absolute-motion button

However, when my test program moves the absolute pointer to, say, x=200 y=100, Weston actually moves it to x=200+"current x" y=100+"current y".  This is a regression since it was recently working fine...

The first bad commit is http://cgit.freedesktop.org/wayland/weston/commit/?id=068b61c25488cb55c686142886d988f3d6554ec0
Comment 1 Rob Bradford 2013-03-27 16:16:07 UTC
Created attachment 77111 [details] [review]
compositor: Support notifying with absolute position too
Comment 2 Kristian Høgsberg 2013-03-27 19:21:52 UTC
Committed, thanks.

commit c088e2c01145d05eddb3314de17c8dbec6b8cb62
Author: Rob Bradford <rob@linux.intel.com>
Date:   Wed Mar 27 15:59:43 2013 +0000

    compositor: Support notifying with absolute position too
    
    With evdev input devices that generate absolute positions we need to provide
    an infrastructure in the compositor for supporting those.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=61997
Comment 3 Joe Konno 2013-03-27 23:04:03 UTC
Thanks Rob!

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.