The Wacom Pro Pen 3D includes a third barrel switch which is intended to be particularly useful in applications where one frequency uses pan, zoom, and rotate to navigate around a scene or model. The pen is compatible with the MobileStudio Pro, 2nd-gen Intuos Pro, and Cintiq Pro. When the third button is pressed, these devices set both the HID_DG_BARRELSWITCH and HID_DG_BARRELSWITCH2 usages since their HID descriptors do not include a usage specific to the button. Rather than send both BTN_STYLUS and BTN_STYLUS2 when the third button is pressed, userspace (libinput) has requested that we detect this condition and report a newly-defined BTN_STYLUS3 event instead. We could define a quirk specific to devices compatible with the Pro Pen 3D, but the liklihood of seeing both barrel switch bits set with other pens/devices is low enough to not worry about (pens mechanically prevent accidental activation of multiple switches).
Showing the changes to include/uapi/linux (1 of 3 files). Show all
Unified · Split
| @@ -406,6 +406,7 @@ · 405 unmodified lines | |||
| 406 | #define BTN_TOOL_MOUSE 0x146 | 406 | #define BTN_TOOL_MOUSE 0x146 |
| 407 | #define BTN_TOOL_LENS 0x147 | 407 | #define BTN_TOOL_LENS 0x147 |
| 408 | #define BTN_TOOL_QUINTTAP 0x148 /* Five fingers on trackpad */ | 408 | #define BTN_TOOL_QUINTTAP 0x148 /* Five fingers on trackpad */ |
| 409 | #define BTN_STYLUS3 0x149 | ||
| 409 | #define BTN_TOUCH 0x14a | 410 | #define BTN_TOUCH 0x14a |
| 410 | #define BTN_STYLUS 0x14b | 411 | #define BTN_STYLUS 0x14b |
| 411 | #define BTN_STYLUS2 0x14c | 412 | #define BTN_STYLUS2 0x14c |