xf86-input-evdev: Changes to 'master'

Peter Hutterer whot at kemper.freedesktop.org
Sun Dec 21 20:58:36 PST 2014


 src/emuWheel.c |    2 
 src/evdev.c    |  173 ++++++++++++++++++++++++++++++---------------------------
 src/evdev.h    |    8 +-
 3 files changed, 97 insertions(+), 86 deletions(-)

New commits:
commit 511498478b49aa39629615c110c9d0129fa6bbef
Author: Éric Brunet <Eric.Brunet at lps.ens.fr>
Date:   Tue Sep 30 23:04:55 2014 +0200

    Move EVDEV_RELATIVE_MODE logic earlier
    
    When in EVDEV_RELATIVE_MODE, after converting the absolute valuators, the
    code unsets pEvdev->abs_queued. This is wrong if there are some absolute
    valuators which are not positions, such as a pressure valuators, because
    events on these valuators would be lost.
    
    This patch fixes the problem by doing the absolute->relative translation
    early. This way, abs_queued is not set and then unset when receiving
    absolute valuators representing positions. Other absolute events now set abs_queued
    and will be processed.
    
    Signed-off-by: Éric Brunet <Eric.Brunet at lps.ens.fr>
    Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>

commit 3dcf6f123c54fd3104bcb79677cd347972abea4c
Author: Éric Brunet <Eric.Brunet at lps.ens.fr>
Date:   Tue Sep 30 22:32:51 2014 +0200

    Don't update old_vals when not in EVDEV_RELATIVE_MODE
    
    When not in EVDEV_RELATIVE_MODE, absolute position is stored in old_vals. This serves
    no purpose except that old_vals is ready when the device is switched to
    EVDEV_RELATIVE_MODE. It is however better to make the copy between old_vals
    and abs_vals at the time of the switch rather than all the time.
    
    Signed-off-by: Éric Brunet <Eric.Brunet at lps.ens.fr>
    Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>

commit f59585b36709c8a529da6e08662ed6c62b73ebd5
Author: Éric Brunet <Eric.Brunet at lps.ens.fr>
Date:   Tue Sep 30 22:15:45 2014 +0200

    Change the logic concerning EVDEV_RELATIVE_MODE and in_proximity
    
    When not in_proximity, we don't really trust data, even though a valuator
    sent just before a in_proximity event might actually be important. The
    present code for EVDEV_RELATIVE_MODE throws away all data if not
    in_proximity, which is a little bit too much. This patch allows for
    relative values to be calculated and old_vals to be updated even if not
    in_proximity, but will prevent evdev to sending (presumably) wrong
    information to the X server. But at least, old_vals will be correctly
    filled when the device comes into proximity again.
    
    Signed-off-by: Éric Brunet <Eric.Brunet at lps.ens.fr>
    Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>

commit 593bbc6390aa6f9feec0e2b081e1bfe6ab03595a
Author: Éric Brunet <Eric.Brunet at lps.ens.fr>
Date:   Tue Sep 30 20:49:46 2014 +0200

    drop the pEvdev->delta array
    
    Now that relative events have their own valuator mask, use it instead of
    delta
    
    Signed-off-by: Éric Brunet <Eric.Brunet at lps.ens.fr>
    Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>

commit e0e2587a95afaeb25ad73bb8b27488e79d1fe02e
Author: Éric Brunet <Eric.Brunet at lps.ens.fr>
Date:   Tue Sep 30 14:27:20 2014 +0200

    Split pEvdev->vals into pEvdev->abs_vals and pEvdev->rel_vals
    
    This should hopefully fix bug 84445.
    
    Signed-off-by: Éric Brunet <Eric.Brunet at lps.ens.fr>
    Reviewed-by: Peter Hutterer <peter.hutterer at who-t.net>
    Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>



More information about the xorg-commit mailing list