The server uses the flags to decide if a device comes up as attached or
floating slave. Overwriting the flag after the server has processed the
CorePointer/AlwaysCore/Floating/etc options results in the device always
coming up as floating slave. This again makes the device appear
unresponsive.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
xf86Elo.c:74:5: warning: initialization discards 'const' qualifier from
pointer target type [enabled by default]
several of:
xf86Elo.c:915:3: warning: initialization discards 'const' qualifier from
pointer target type [enabled by default]
(input ABI 18 only)
xf86Elo.c:1012:9: warning: assignment discards 'const' qualifier from
pointer target type [enabled by default]
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Don't overwrite the user-assigned name and use XI_TOUCHSCREEN for type_name.
Don't allow Option "DeviceName", use Identifier instead.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Both describe the same struct, LocalDevicePtr has been removed from the
server.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Cyril Brulebois <kibi@debian.org>
The fix for bug #14109 ensures all bytes are emptied from the OS buffer
by looping until xf86WaitForInput returns 0. This patch just changes
the timeout from 1 millisecond to 0: we don't want the X server to block
if there's no more serial data.
It also removes the Vmin and Vtime options, which were making the calls
to read() block until a complete 10-byte packet buffer could be filled.
At 9600 bps, this could pause the X server for up to 9 ms. The code can
already handle partial buffers, so all we have to do is get rid of the
Vmin.
Also, if xf86EloGetPacket() returns !Success, we should continue rather
than break so the xf86WaitForInput call can decide whether to exit, in
case there's more data in the buffer.
Before the fix, glxgears was giving me about 390 FPS normally and down
to 140 FPS when dragging an empty area of the touchscreen. Now it's
basically unchanged when the touchscreen is in use (390 -> 385 FPS).
X.Org Bug 14109 <https://bugs.freedesktop.org/show_bug.cgi?id=14109>
Signed-off-by: Michael Smith <msmith@cbnco.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Some touchscreens supported by this driver need special handling, hence the
explicit specification of the model. Note that this commit does not actually
do anything with the information, it just sets some internal state.
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Followup to 72408c2404.
This patch isn't perfect yet, usage of O_NONBLOCK would be preferred and some
better error handling for incomplete packages, but at least it's less broken
than without this patch.
Signed-off-by: Peter Hutterer <peter@cs.unisa.edu.au>
X.Org Bug 14109 <http://bugs.freedesktop.org/show_bug.cgi?id=14109>
There may be more than one packet waiting for us at a time, so loop until we
don't get one anymore.
This patch is untested for lack of a device, but should fix
X.Org Bug 14109 <http:/bugs.freedesktop.org/show_bug.cgi?id=14109>