summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-10-19Use mtdev for multitouch devicesHEADxi2.1Chase Douglas4-139/+135
Switch to slotted evdev multitouch events. Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
2010-10-15Add initial multitouch support using Xi 2.1Daniel Stone2-14/+205
This uses the new xserver touch event API to provide support for multitouch in evdev, for devices that provide a hardware tracking ID. All ABS_MT_* events are sent as independent touch events, rather than valuators. Signed-off-by: Daniel Stone <daniel@fooishbar.org>
2010-10-13Rename evdev->tool to evdev->proximity.Peter Hutterer2-10/+10
evdev doesn't care about the actual tool used, only that it is used as an indicator for proximity. Rename the field accordingly to make the code more obvious to read. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Chris Bagwell <chris@cnpbagwell.com>
2010-10-11When posting buttons, post absolute valuators if we have them.Peter Hutterer1-5/+10
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2010-10-11Fix valuator offset when posting absolute motion events.Peter Hutterer1-1/+1
If first_v was not zero, the values passed to xf86PostMotionEventP were wrong. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2010-10-11Don't pass pointers around to first_v and num_v.Peter Hutterer2-10/+10
We only use them as values, no need for the addresses. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2010-10-11De-duplicate event queue access.Peter Hutterer1-19/+23
Factor out access to the next queue element in a static function to be reused for button and key presses. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2010-10-11Remove refcnt initialization from InputDriverRec.Peter Hutterer1-1/+0
Removed from the server with commit 6130170e7e9b64c611ee942ec3455dd1a185193d Author: Adam Jackson <ajax@redhat.com> Date: Sat Sep 18 06:41:35 2010 -0400 xfree86: Remove unused refcounting from input drivers And given that it was unused, we don't need to ifdef it. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-09-07Clean up button code to number mappingNikolai Kondrashov1-73/+26
Now BTN_MOUSE, BTN_MISC and BTN_DIGI button ranges are all mapped to the same lower numbers including first three, corresponding to the LMR mouse buttons. Like this: 1 BTN_LEFT BTN_0 BTN_TOUCH 2 BTN_MIDDLE BTN_1 BTN_STYLUS 3 BTN_RIGHT BTN_2 BTN_STYLUS2 8 BTN_SIDE BTN_3 9 BTN_EXTRA BTN_4 10 BTN_FORWARD BTN_5 11 BTN_BACK BTN_6 12 BTN_TASK BTN_7 13 BTN_8 14 BTN_9 This streamlines the button mapping under the assumption that these ranges don't generally appear in a single device simultaneously. If they do appear, they will simply report overlapping button numbers. Signed-off-by: Nikolai Kondrashov <spbnick@gmail.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-09-07Add BTN_TOUCH/STYLUS/STYLUS2 support.Nikolai Kondrashov1-0/+10
These three buttons are mapped into buttons 1/2/3, respectively. Overlapping range with BTN_LEFT/MIDDLE/RIGHT, assuming that these ranges don't generally appear in a single device simultaneously. Signed-off-by: Nikolai Kondrashov <spbnick@gmail.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-09-07SwapAxes should rescale raw values when enabledTim Yamin1-2/+10
Current implementation assumes that X & Y axes have the same min and max values. If they don't, you'll end up with funny behaviour if SwapAxes is turned on. Signed-off-by: Tim Yamin <plasm@roo.me.uk> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-09-01Merge branch 'input-api' of git://people.freedesktop.org/~whot/xf86-input-evdevPeter Hutterer1-39/+46
2010-09-01Improve dumb tablet detectionNikolai Kondrashov1-1/+3
Improve dumb tablet detection by checking if BTN_STYLUS or BTN_STYLUS2 (first or second pen barrel button) is present when BTN_TOOL_PEN is not found. This enables detection of tablets without explicit tool proximity reporting. These include at least four UC-Logic tablet models: WP4030U, WP5540U, WP8060U and PF1209, on which many Genius and Trust models are based. Signed-off-by: Nikolai Kondrashov <spbnick@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-08-31Bump to 2.5.99.Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-08-31Fix comments about BTN_TOOL_PEN.Nikolai Kondrashov1-5/+5
Fix incorrect usage of BTN_DIGI instead of BTN_TOOL_PEN in comments. Fix forgotten pEvdev->digi reference. Signed-off-by: Nikolai Kondrashov <spbnick@gmail.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-08-23evdev 2.5.0Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-08-23man: don't reference README.mousePeter Hutterer1-2/+1
No real reason to refer to the mouse driver's readme. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-08-19evdev 2.4.99.901Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-08-16evdev: Initialize valuators array. (#24737)Bartosz Brachaczek1-1/+1
The array needs to be filled with zeros, otherwise we may end up sending it with random values if non-zero values aren't in one row (which is the case for A4Tech X-750F which sends REL_MISC events without a reason). X.Org Bug 24737 <http://bugs.freedesktop.org/show_bug.cgi?id=24737> Signed-off-by: Bartosz Brachaczek <b.brachaczek@gmail.com> Tested-by: Bartek Iwaniec <hash87@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-08-16evdev: Revert "Set all valuators for relative motion events (#24737)"Bartosz Brachaczek1-1/+1
It isn't necessary to post zero-deltas to X Server. In order not to post uninitialized "v" array we should rather simply initialize it. This reverts commit c1f16a4f59a584ab4546c2f16e20b06703042057. Signed-off-by: Bartosz Brachaczek <b.brachaczek@gmail.com> Tested-by: Bartek Iwaniec <hash87@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-08-16Don't count BTN_TOUCH as tool. (#29428)Peter Hutterer1-1/+0
Devices that don't have a tool but BTN_TOUCH simply have the tool always on. Devices that have a tool other than BTN_TOUCH set this tool before BTN_TOUCH is emitted anyway. X.Org Bug 29428 <http://bugs.freedesktop.org/show_bug.cgi?id=29428> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-07-22Return BadMatch for already configured devices.Peter Hutterer1-1/+4
PreInit can now return different error codes. Return BadAlloc for alloc failures and BadMatch if the device was already configured or the cache comparison/probe failed. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-07-22Use the new input API (changed PreInit function prototype).Peter Hutterer1-12/+32
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-07-22Move private init down.Peter Hutterer1-3/+3
No real change, preparation for new input API. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-07-22Use pInfo->options instead of dev->commonOptions.Peter Hutterer1-1/+1
No real change, preparation for new input API. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-07-22Add ifdefs for pre ABI 12 support.Peter Hutterer1-0/+6
The server doesn't provide these defines anymore, define them here for future use. To be purged whenever we drop support for the current server. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-07-22Remove usage of XI86_POINTER_CAPABLE and XI86_KEYBOARD_CAPABLE.Peter Hutterer1-25/+3
XI86_KEYBOARD_CAPABLE was write-only, both in the driver and the server. XI86_POINTER_CAPABLE was write-only in the server and can be emulated with has_abs_axes and has_rel_axes. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-07-01Fix out-of-bounds access if more than MAX_VALUATORS are present. (#28809)Alex Warg1-2/+13
The functions EvdevAddRelClass and EvdevAddAbsClass do out of bounds accesses to vals and old_vals arrays in the EvdevRec structure if there are more than MAX_VALUATORS axes reported by the kernel. X.Org Bug 28809 <http://bugs.freedesktop.org/show_bug.cgi?id=28809> Signed-off-by: Alex Warg <alexander.warg@os.inf.tu-dresden.de> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-06-28man: some minor fixes to man page.Peter Hutterer1-6/+15
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-06-28Add myself to Authors in man page.Peter Hutterer1-1/+1
git blames me for about half the driver now, I guess that's enough justification ;) Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-06-16config: use AC_PROG_INSTALL now supplied by XORG_DEFAULT_OPTIONSGaetan Nadon1-3/+0
It depends on util-macros 1.8 The existing statement can now be removed from the configuration file. Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-06-16config: upgrade to util-macros 1.8 for additional man page supportGaetan Nadon2-23/+7
Use MAN_SUBST now supplied in XORG_MANPAGE_SECTIONS The value of MAN_SUBST is the same for all X.Org packages. Use AC_PROG_SED now supplied by XORG_DEFAULT_OPTIONS The existing statement can now be removed from the configuration file. Use Automake $() for variables in Makefile.am Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-06-16COPYING: update and refactor the Copyright noticesGaetan Nadon1-36/+13
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-06-01Bump to 2.4.99Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-05-31Disable middle mouse button emulation by default.Peter Hutterer3-38/+4
The AUTO feature was the default, MB emulation was on until a middle mouse button was pressed. MB emulation however results in a delay of the first press, causing minor annoyances to the users and being generally confusing when the behaviour before a button press is different to after a button pres. Disable the feature by default instead. There's not a lot of two-button mice around anymore though and the inability to detect two-button mice makes for non-deterministic detection of when the emulation should be on. Middle button emulation can be enabled with a configuration snippet: Section "InputClass" Identifier "middle button emulation" MatchIsPointer "on" Option "Emulate3Buttons" "on" EndSection Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Daniel Stone <daniel@fooishbar.org>
2010-05-28Remove libc wrappers for malloc, calloc and free.Peter Hutterer3-14/+14
Evdev is Linux-only, and we've had the above calls for quite a while now. Plus, now that the server has removed them they generate _a lot_ of warnings otherwise. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Jamey Sharp <jamey@minilop.net>
2010-05-28Move mode declaration, it's not const either.Peter Hutterer1-1/+1
What we're getting back from xf86SetStrOption is a strdup'd string, not const, especially given that we free it a few lines down. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-05-28Move opening the device into a separate function.Peter Hutterer1-49/+50
Re-use from EvdevOn and PreInit. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-05-28Move checks for calibration, inversion and axis swap to EvdevProbe.Peter Hutterer1-20/+26
Keyboard devices don't need these checks. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-05-28Move EVIOCGRAB into a static func.Peter Hutterer1-19/+37
This is in preparation of some major rework, there are no functional changes. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-05-28Move error handling in PreInit down to the end.Peter Hutterer1-11/+13
Just have one exit path instead of different ones. Guards are in place to avoid freeing/deleting something that shouldn't be. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Jamey Sharp <jamey@minilop.net>
2010-05-28Comment odd EVIOCGRAB behaviour and reshuffle conditions a bit.Peter Hutterer1-4/+9
The reason for this rather weird approach is to ungrab immediately after getting a successful grab. Evdev shouldn't be hogging the device if nothing is done with it. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Jamey Sharp <jamey@minilop.net>
2010-05-28Remove support for kernel 2.4.Peter Hutterer1-29/+3
It's been 6 years since 2.6, I doubt evdev would even work on 2.4 right now. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Jamey Sharp <jamey@minilop.net> Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
2010-05-10config: AC_PROG_SED is required explicitly.Gaetan Nadon1-0/+1
It sets the SED env variable with an appropriate sed program path It still works on some platform when not explicity called. Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
2010-05-06Update a stale comment about the use of pEvdev->tool.Peter Hutterer1-3/+3
Including some typo fixes in the same comment. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-04-29Read the device resolution from the kernel.Peter Hutterer1-1/+11
For earlier kernels, use the previous hardcoded resolution in place. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Julien Cristau <jcristau@debian.org>
2010-04-29config: remove AH_TOP autoheader statement.Peter Hutterer6-6/+7
Include it in evdev.h instead. xorg-server.h is required to define the right datatype sizes on 64 bit, hence ensure that evdev.h is the first included in each file. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
2010-04-22Revert "config: remove AH_TOP autoheader statement"Gaetan Nadon2-1/+1
The changed location of xorg-server.h had some side-effects. See Bug 27768 <https://bugs.freedesktop.org/show_bug.cgi?id=27768> This reverts commit 9dbace89bee55a001e794ccf3ff36e3afeda4715. Signed-off-by: Gaetan Nadon <memsize@videotron.ca> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-04-20Merge branch 'master' of git://gitorious.org/omcfadde/xf86-input-evdevPeter Hutterer3-9/+15
2010-04-20evdev: EvdevProbe: check ioctl() return value and warn on failure.Oliver McFadden1-2/+3
Called function "ioctl" whose return value should be checked (checked 10 out of 11 times) Signed-off-by: Oliver McFadden <oliver.mcfadden@nokia.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>