HID: wacom: Consult the application usage when determining field type
It is not necessarily sufficient to look only at the physical and logical usages when determining if a field is for the pen or touch. Some fields are not contained in a sub-collection and thus only have an application usage. Not checking the application usage in such cases causes us to ignore the field entirely, which may lead to incorrect behavior. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
This commit is contained in:
parent
954df6ad00
commit
c376e7167e
@ -1484,9 +1484,11 @@ static void wacom_wac_finger_report(struct hid_device *hdev,
|
||||
}
|
||||
|
||||
#define WACOM_PEN_FIELD(f) (((f)->logical == HID_DG_STYLUS) || \
|
||||
((f)->physical == HID_DG_STYLUS))
|
||||
((f)->physical == HID_DG_STYLUS) || \
|
||||
((f)->application == HID_DG_PEN))
|
||||
#define WACOM_FINGER_FIELD(f) (((f)->logical == HID_DG_FINGER) || \
|
||||
((f)->physical == HID_DG_FINGER))
|
||||
((f)->physical == HID_DG_FINGER) || \
|
||||
((f)->application == HID_DG_TOUCHSCREEN))
|
||||
|
||||
void wacom_wac_usage_mapping(struct hid_device *hdev,
|
||||
struct hid_field *field, struct hid_usage *usage)
|
||||
|
Loading…
Reference in New Issue
Block a user