xf86-input-synaptics:master: 1 commit(s)

Peter Hutterer whot at kemper.freedesktop.org
Thu Sep 4 16:36:55 PDT 2014


Reporting from xf86-input-synaptics: xf86-input-synaptics driver

Please visit:
    http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics
Or get your own copy by using:
    git-clone git://anongit.freedesktop.org/xorg/driver/xf86-input-synaptics

Commit against master at 96e60a4e...:
commit 90d19302306f49722e210227b2fb5161e6f51880
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date:   Thu Aug 28 14:13:38 2014 +1000

    eventcomm: ensure we're on the same clock as the server
    
    Default on evdev devices is CLOCK_REALTIME. If that clock falls behind the
    server's CLOCK_MONOTONIC, motion after a clickpad click may be delayed by the
    difference in the clocks.
    
    In detail:
    When the timer func is triggered, GetTimeInMillis() which is CLOCK_MONOTONIC,
    is stored as hwState->millis. The eventcomm backend uses struct
    input_event time (CLOCK_REALTIME).
    
    When we read events from the device, if the evdev time is less than the server
    time, the fix for (#48777) sets the current event time to hwState->millis.
    Until the evdev time overtakes that stored time, all events have the
    hwState->millis time.
    
    If during that time a clickpad triggers a physical click,
    clickpad_click_millis is set to hwState->millis + the ignore-motion timeout.
    Thus, all motion is ignored until the event time overtakes that stored
    time.
    
    The whole issue is further enhanced by us unconditionally setting the timer
    func if we get any events, which is a separate issue anyway.
    
    Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
    Reviewed-by: Hans de Goede <hdegoede at redhat.com>

diffstat:
    src/eventcomm.c |   13 +++++++++++--
    1 file changed, 11 insertions(+), 2 deletions(-)

cgit url:
http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics/commit/?id=90d19302




More information about the xorg-commit mailing list