Group inital values by device types. Signed-off-by: Ping Cheng <pi...@wacom.com> --- v2: rely on device type instead of kernel version, as suggested by Peter. --- wacom.c | 67 +++++++++++++---------------------------------------------------- 1 file changed, 13 insertions(+), 54 deletions(-)
diff --git a/wacom.c b/wacom.c index 32a98c4..3f5a725 100644 --- a/wacom.c +++ b/wacom.c @@ -211,26 +211,21 @@ static int wacom_intuos_events(struct uinput_info *info) set_event(info, UI_SET_KEYBIT, BTN_TOOL_RUBBER); set_event(info, UI_SET_KEYBIT, BTN_TOOL_MOUSE); set_event(info, UI_SET_KEYBIT, BTN_TOOL_LENS); - if (features->type != INTUOS5S && - features->type != INTUOS5M && - features->type != INTUOS5L) + if (features->type != INTUOS) set_event(info, UI_SET_KEYBIT, BTN_TOOL_FINGER); - set_event(info, UI_SET_KEYBIT, BTN_TOUCH); set_event(info, UI_SET_KEYBIT, BTN_STYLUS2); set_event(info, UI_SET_KEYBIT, BTN_RIGHT); set_event(info, UI_SET_KEYBIT, BTN_LEFT); set_event(info, UI_SET_KEYBIT, BTN_MIDDLE); set_event(info, UI_SET_KEYBIT, BTN_SIDE); set_event(info, UI_SET_KEYBIT, BTN_EXTRA); - if (features->type != INTUOS5S && - features->type != INTUOS5M && - features->type != INTUOS5L) - set_event(info, UI_SET_KEYBIT, BTN_7); - set_event(info, UI_SET_KEYBIT, BTN_MIDDLE); - if (features->type != INTUOS5S && - features->type != INTUOS5M && - features->type != INTUOS5L) { + if (features->type == INTUOS3S || + features->type == INTUOS3 || + features->type == INTUOS3L || + features->type == CINTIQ || + features->type == BEE || + features->type == WACOM_21UX2) { set_event(info, UI_SET_ABSBIT, ABS_RX); set_event(info, UI_SET_ABSBIT, ABS_RY); } @@ -352,26 +347,14 @@ static int wacom_set_events(struct uinput_info *info, struct uinput_user_dev *de break; case INTUOS4: case INTUOS4L: - set_event(info, UI_SET_ABSBIT, ABS_Z); - set_event(info, UI_SET_KEYBIT, BTN_7); - set_event(info, UI_SET_KEYBIT, BTN_8); - /* fall trhu */ - case INTUOS4S: - set_event(info, UI_SET_KEYBIT, BTN_0); - set_event(info, UI_SET_KEYBIT, BTN_1); - set_event(info, UI_SET_KEYBIT, BTN_2); - set_event(info, UI_SET_KEYBIT, BTN_3); - set_event(info, UI_SET_KEYBIT, BTN_4); - set_event(info, UI_SET_KEYBIT, BTN_5); - set_event(info, UI_SET_KEYBIT, BTN_6); - wacom_intuos_events(info); - break; case INTUOS5M: case INTUOS5L: set_event(info, UI_SET_KEYBIT, BTN_7); set_event(info, UI_SET_KEYBIT, BTN_8); case INTUOS5S: set_event(info, UI_SET_ABSBIT, ABS_Z); + /* fall through */ + case INTUOS4S: set_event(info, UI_SET_KEYBIT, BTN_0); set_event(info, UI_SET_KEYBIT, BTN_1); set_event(info, UI_SET_KEYBIT, BTN_2); @@ -416,7 +399,6 @@ static int wacom_set_initial_values(struct uinput_info *info, dev->absmax[ABS_WHEEL] = 71; /* fall through */ case G4: - /* fall through */ case GRAPHIRE: break; @@ -429,45 +411,22 @@ static int wacom_set_initial_values(struct uinput_info *info, /* fall through */ case INTUOS3S: dev->absmax[ABS_RX] = 4096; - dev->absmax[ABS_Z] = 899; - dev->absmin[ABS_Z] = -900; /* fall through */ - case INTUOS: - dev->absmax[ABS_WHEEL] = 1023; - dev->absmax[ABS_TILT_X] = 127; - dev->absmax[ABS_TILT_Y] = 127; - dev->absmin[ABS_RZ] = -900; - dev->absmax[ABS_RZ] = 899; - dev->absmin[ABS_THROTTLE] = -1023; - dev->absmax[ABS_THROTTLE] = 1023; - break; - case PL: - case PTU: - break; - case PENPARTNER: - break; - case TABLETPC: - dev->absmax[ABS_RX] = 1023; - dev->absmax[ABS_RY] = 1023; case INTUOS4S: case INTUOS4: case INTUOS4L: - dev->absmin[ABS_Z] = -900; - dev->absmax[ABS_Z] = 899; - break; case INTUOS5S: case INTUOS5M: case INTUOS5L: - dev->absfuzz[ABS_X] = 4; - dev->absfuzz[ABS_Y] = 4; - dev->absfuzz[ABS_Y] = 4; dev->absmin[ABS_Z] = -900; dev->absmax[ABS_Z] = 899; - dev->absmin[ABS_RZ] = -900; - dev->absmax[ABS_RZ] = 899; + /* fall through */ + case INTUOS: dev->absmax[ABS_WHEEL] = 1023; dev->absmax[ABS_TILT_X] = 127; dev->absmax[ABS_TILT_Y] = 127; + dev->absmin[ABS_RZ] = -900; + dev->absmax[ABS_RZ] = 899; dev->absmin[ABS_THROTTLE] = -1023; dev->absmax[ABS_THROTTLE] = 1023; break; -- 1.9.1 ------------------------------------------------------------------------------ Site24x7 APM Insight: Get Deep Visibility into Application Performance APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month Monitor end-to-end web transactions and take corrective actions now Troubleshoot faster and improve end-user experience. Signup Now! http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 _______________________________________________ Linuxwacom-devel mailing list Linuxwacom-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel