From e5bff8354652f5798d1906004150790377abc775 Mon Sep 17 00:00:00 2001 From: Henrik Rydberg Date: Sun, 11 Apr 2010 14:15:09 +0200 Subject: Define swipe buttons Define four additional buttons to be used for swiping gestures. Signed-off-by: Henrik Rydberg --- src/hwdata.h | 6 +++++- src/multitouch.c | 9 ++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/hwdata.h b/src/hwdata.h index c00fb39..81d847b 100644 --- a/src/hwdata.h +++ b/src/hwdata.h @@ -24,7 +24,7 @@ #include "common.h" -#define DIM_BUTTON 7 +#define DIM_BUTTON 11 #define MT_BUTTON_LEFT 0 #define MT_BUTTON_MIDDLE 1 @@ -33,6 +33,10 @@ #define MT_BUTTON_WHEEL_DOWN 4 #define MT_BUTTON_HWHEEL_LEFT 5 #define MT_BUTTON_HWHEEL_RIGHT 6 +#define MT_BUTTON_SWIPE_UP 7 +#define MT_BUTTON_SWIPE_DOWN 8 +#define MT_BUTTON_SWIPE_LEFT 9 +#define MT_BUTTON_SWIPE_RIGHT 10 #define BIT_MT_TOUCH_MAJOR 0 #define BIT_MT_TOUCH_MINOR 1 diff --git a/src/multitouch.c b/src/multitouch.c index ebc0033..f0e572d 100644 --- a/src/multitouch.c +++ b/src/multitouch.c @@ -74,13 +74,20 @@ static void initButtonLabels(Atom map[DIM_BUTTON]) PROPMAP(map, MT_BUTTON_WHEEL_DOWN, BTN_LABEL_PROP_BTN_WHEEL_DOWN); PROPMAP(map, MT_BUTTON_HWHEEL_LEFT, BTN_LABEL_PROP_BTN_HWHEEL_LEFT); PROPMAP(map, MT_BUTTON_HWHEEL_RIGHT, BTN_LABEL_PROP_BTN_HWHEEL_RIGHT); + /* how to map swipe buttons? */ + PROPMAP(map, MT_BUTTON_SWIPE_UP, BTN_LABEL_PROP_BTN_0); + PROPMAP(map, MT_BUTTON_SWIPE_DOWN, BTN_LABEL_PROP_BTN_1); + PROPMAP(map, MT_BUTTON_SWIPE_LEFT, BTN_LABEL_PROP_BTN_2); + PROPMAP(map, MT_BUTTON_SWIPE_RIGHT, BTN_LABEL_PROP_BTN_3); } #endif static int device_init(DeviceIntPtr dev, LocalDevicePtr local) { struct MTouch *mt = local->private; - unsigned char btmap[DIM_BUTTON + 1] = { 0, 1, 2, 3, 4, 5, 6, 7 }; + unsigned char btmap[DIM_BUTTON + 1] = { + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 + }; #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7 Atom axes_labels[2], btn_labels[DIM_BUTTON]; initAxesLabels(axes_labels); -- cgit v1.2.3