HID: lenovo: Use native middle-button mode for compact keyboards
authorJamie Lentin <jm@lentin.co.uk>
Tue, 16 Dec 2014 21:26:46 +0000 (21:26 +0000)
committerJiri Kosina <jkosina@suse.cz>
Wed, 17 Dec 2014 08:00:16 +0000 (09:00 +0100)
commit94eefa27132358434735060c6bbdf61c669bb0ab
tree00f6a4d763d52223c19a992d1b9c8a4c150ba7a7
parente3cb0acd23258cf5e1a7ea270c98805eff01dcc5
HID: lenovo: Use native middle-button mode for compact keyboards

By default the middle button is in a compatibility mode, and generates
standard wheel events when dragging with the middle trackpoint button.
Unfortunately this is buggy:
* The middle button comes up before starting wheel events, causing a middle
  click on whatever the mouse cursor was sitting on
* The USB keyboard always generates the "native" horizontal wheel event,
  regardless of mode.

Instead, enable the "native" mode the Windows driver uses, and add support
for the custom events this generates. This fixes the USB keyboard wheel
events, and the middle-click up event comes after the wheel events.

Signed-off-by: Jamie Lentin <jm@lentin.co.uk>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/hid-lenovo.c