Commit Graph

10 Commits

Author SHA1 Message Date
Zephaniah E. Hull
fa03de438e Move the axis to button map code back into the rel code.
This might solve some problems, but should at least prevent some odd behavior.
2006-07-19 23:06:23 -04:00
Zephaniah E. Hull
dc88668839 Split the New functions so that structs can be allocated and buttons
detected, and then stuff that depends on _other_ areas.
(Specificly, axes and btn have a circular dependency on which one has to
run first, this solves that.)

Add button names, and a way to get a button number from a name.

Add a function for checking to see if a button exists, takes the number from the previous function.

Change the (unused) state array of pointers in the button struct to an array of pointers to functions for callback.

Implemented the 'touch' feature, on by default if BTN_DIGI_TOUCH exists,
won't, in rel mode, process x/y data unless it's down, and is used to
try and make 'pick up stencil, move to other side of digitizer, set back
down' not jump to the other side of the screen in rel mode.
(This doesn't work as well as it could, but I'm fairly sure that it's
due to the quality of the absolute input device I'm using, but feedback
would be really nice.)

FIXME: Update the manpage for this.
2006-07-13 11:59:25 -04:00
Zephaniah E. Hull
e9c60da89a Tweak credits and references.
Change the longs to unsigned longs in the bitfields.
Cleanup our includes.
Stop pulling in asm/types.h and asm/bitops.h.
Conditionally define the stuff that used to come from the above, including
    our own test_bit, set_bit and clear_bit.
Change the longs to unsigned longs in the bitfields.
Change the longs to unsigned longs in the bitfields.
Use the bitop defines in evdev.h properly.
Change the longs to unsigned longs in the bitfields.
Change the longs to unsigned longs in the bitfields.
Use the bitop defines in evdev.h properly.
Change the longs to unsigned longs in the bitfields.
Use the bitop defines in evdev.h properly.
Add HPPA/HPPA64 entries. (Thanks to Fabio M. Di Nitto
    <fabbione@ubuntu.com>)
2006-05-14 11:55:50 +00:00
Zephaniah E. Hull
cffc51e04a evdevAbsRec: Remove the scale bool, rename scale_x and scale_y to scale[2].
evdevAxesRec: Make btnMap an int array instead of a Card8 array.
Make abs support and non-core stuff actually work.
Relative emulation for abs mode is still a bit broken, but that's far less
    critical.
How many buttons we've registered is configuration information, not an
    error message.
2006-04-14 07:01:37 +00:00
Zephaniah E. Hull
c97fdb4449 Remove evdev_abs.c and evdev_rel.c. Added evdev_axes.c.
Change the calls to refer to EvdevAxes instead of Abs and Rel. Include
    mipointer.h. (Fixes a compile error.) Remove an unused variable from
    EvdevReadInput.
Removed evdev_abs.c and evdev_rel.c, added evdev_axes.c. Added count to rel
    and abs. Moved btnMap from rel to the new axes. Shuffle some includes,
    and include stdarg.h.
Removed.
New, a mix of rel and abs that should actually work in the rel case.
Rearrange include order. btnMap was moved from being part of rel to being
    part of axes.
Removed.
Rearrange include order.
Rearrange include order.
NOTE: This commit has been compile tested, not run tested.
I have some other changes to make before I can do more heavy testing.
2006-04-08 17:23:06 +00:00
Adam Jackson
ad4d62e1d3 Unlibcwrap. Bump server version requirement. Bump to 1.1.0. 2006-04-07 17:30:27 +00:00
Zephaniah E. Hull
47482dad76 Compile with -Wall now. Add evdev.h to the sources so that make distcheck
gets it.
Bugzilla #5943 <https://bugs.freedesktop.org/show_bug.cgi=5943> Make sure
    we include errno.h.
Reduce EVDEV_MAXBUTTONS to 96.
Split up evdevStateRec into a struct with pointers to new structs for btn,
    abs, rel, and key.
New structure type for handling the device capability bitmaps.
Add device bits and struct input_id to evdevDeviceRec.
Add matching device bits, struct input_id, and pass number to
    evdevDriverRec.
Prototype for evdevGetBits from evdev_brain.c.
Conversion for the evdevStateRec split.
Remove the errno.h include, it's in evdev.h for now.
Move the bit getting from the drivers to here, into evdevDeviceRec.
Fix a rare case of fd leakage.
Add several new (and somewhat ugly) device matching options: <map>Bits:
    Where map is one of ev, key, rel, abs, msc, led, snd, or ff. In the
    format of '+0 +3 -1-2 ~5-10', requires bits 0 and 3 be set, bits 1 and
    2 to not be set, and at least one bit in the range of 5 to
10 be set. bustype, vendor, product, and version: Simple integer options
    for matching the struct device_id fields, must be 0 (the default) or
    the exact value you wish to match against. pass: Bounded to 0-3,
    devices are matched to the first matching entry found, order for
    multiple matching entries in the same pass is undefined, but it starts
    with pass 0 and goes to pass 3.
Adaptation for the evdevStateRec split and the change in capability bitmap
    handling.
Add evdevGetBits to fill the new evdevBitsRec struct type.
Lots of somewhat ugly code for matching by capability bits.
Split out of evdevRescanDevices to smaller handling functions. The new
    design should be better if I decide to handle arbitrary Device fields
    again.
Adaptation for the evdevStateRec split and the change in capability bitmap
    handling.
Handle all buttons, no button compression at this time, however we reorder
    things so that BTN_MOUSE comes before BTN_MISC, somewhat evily.
Support for the new btn->state[] array of int pointers.
Adaptation for the evdevStateRec split and the change in capability bitmap
    handling.
Adaptation for the evdevStateRec split and the change in capability bitmap
    handling.
I really hope I didn't miss any changes.
2006-02-24 13:44:56 +00:00
Zephaniah E. Hull
763edd3730 Bugzilla #5950 <https://bugs.freedesktop.org/show_bug.cgi=5950> Possible
(maybe) fix for bug #5950. Though, I'm not convinced and still don't
    see how this bug could be happening, especially if this doesn't do it.
2006-02-20 09:18:56 +00:00
Zephaniah E. Hull
28ee08ef08 Bugzilla #5914 <https://bugs.freedesktop.org/show_bug.cgi?id=5914> Stupid
little bug, properly handle wheels on 3 button mice.
2006-02-17 01:17:41 +00:00
Zephaniah E. Hull
e7d4e6b11e Bugzilla #5696 <https://bugs.freedesktop.org/show_bug.cgi?id=5696> Slightly
updated version of the patch listed. Basicly a rewrite of the driver,
    with a few pieces of the old. XKB support, proper device matching,
    basic absolute pointer support. Lots more, will require some user
    config changes.
2006-02-14 14:57:37 +00:00