Merge lp://staging/~oif-team/frame/trunk.v1.0.2 into lp://staging/frame

Proposed by Henrik Rydberg
Status: Superseded
Proposed branch: lp://staging/~oif-team/frame/trunk.v1.0.2
Merge into: lp://staging/frame
Diff against target: 1217 lines (+836/-87)
15 files modified
.gitignore (+1/-0)
configure.ac (+9/-1)
include/utouch/frame-mtdev.h (+8/-0)
include/utouch/frame-xi2.h (+49/-0)
include/utouch/frame.h (+61/-6)
src/Makefile.am (+9/-1)
src/frame-impl.h (+2/-1)
src/frame-mtdev.c (+14/-10)
src/frame-xi2.c (+304/-0)
src/frame.c (+80/-7)
tools/Makefile.am (+13/-1)
tools/common-defs.h (+85/-0)
tools/utouch-frame-test-mtdev.c (+2/-60)
tools/utouch-frame-test-xi2.c (+177/-0)
tools/utouch-frame-test-xi2.txt (+22/-0)
To merge this branch: bzr merge lp://staging/~oif-team/frame/trunk.v1.0.2
Reviewer Review Type Date Requested Status
Chase Douglas (community) Needs Fixing
Stephen M. Webb (community) Approve
Review via email: mp+50582@code.staging.launchpad.net

This proposal has been superseded by a proposal from 2011-02-22.

Description of the change

New version, fixing Chase's comment and adding yet more functionality.

To post a comment you must log in.
Revision history for this message
Stephen M. Webb (bregma) wrote :

Inconsistent #ifdef'ing around ABS_MT_DISTANCE: sometimes #if 0, sometimes #ifdef ABS_MT_DISTANCE.

You might want to fix that before committing.

Other than that, I find no obvious problems.

review: Approve
Revision history for this message
Chase Douglas (chasedouglas) wrote :

1. Velocity compensation for unchanged touches seems to work fine for mtdev, but works terribly for xi 2.1. I think this is due to the X timestamps being poorly correlated to evdev/device timing. We need to disable velocity compensation in the xi 2.1 branch for now. I think we should look into adding device timestamps as a valuator in xi.

2. I've changed the version number of libXi for our multitouch changes. There could be a 1.4.2 released between now and when the upstream libXI has xi 2.1 support, so I downgraded the version to 1.4.1.99.1. This change is not in the ppa, but will be in the ubuntu version of the package. Thus, the configure.ac check should be updated for it.

3. A minor nitpick :). configure.ac is checking for the x11 package twice. You can get rid of the following line:

PKG_CHECK_MODULES([X11], [x11])

review: Needs Fixing
Revision history for this message
Henrik Rydberg (rydberg) wrote :

Here is a patch for position filter inhibit for xi, please test :-)

diff --git a/src/frame-xi2.c b/src/frame-xi2.c
index 7fc38fd..98a43bd 100644
--- a/src/frame-xi2.c
+++ b/src/frame-xi2.c
@@ -288,6 +288,8 @@ utouch_frame_pump_xi2(utouch_frame_handle fh, const XIDevice
Event *ev)
   for (i = 0; i < nbit; i++)
    if (XIMaskIsSet(mask, i))
     handle_event(fh, slot, i, value[num++]);
+ /* no velocity adjustments without device time stamps */
+ slot->vx = slot->vy = 0;
   if (ev->evtype == XI_TouchEnd)
    utouch_frame_get_current_slot(fh)->id = -1;
   return utouch_frame_sync(fh, ev->time);

Revision history for this message
Henrik Rydberg (rydberg) wrote :

> Inconsistent #ifdef'ing around ABS_MT_DISTANCE: sometimes #if 0, sometimes
> #ifdef ABS_MT_DISTANCE.
>
> You might want to fix that before committing.
>
> Other than that, I find no obvious problems.

This is obviously not right, but placed here because of a missing variable in xserver-properties.h. I will add that variable to the ifdef instead.

Revision history for this message
Henrik Rydberg (rydberg) wrote :

I think all comments are now addressed. Pushed a new version of v1.0.2.

15. By Henrik Rydberg

Simplify XInput package test

The XI2.1 support is present in sufficiently recent xinput packages,
so simplify the testing accordingly.

16. By Henrik Rydberg

Fix ABS_MT_DISTANCE compilation conditional

The ABS_MT_DISTANCE is new, and the corresponding entry in
xserver-properties.h is even newer. Make compilation conditional on
the existence of those two defines.

17. By Henrik Rydberg

Disable time-dependent filtering for current XI2.1

Velocity-adjusted positioning and Kalman filters depend on accurate
time stamps on events. Until we have device event times, disable this
functionality for XI2.1

18. By Henrik Rydberg

Bump to version 1.0.2

Unmerged revisions

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches