aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenrik Rydberg <rydberg@euromail.se>2010-04-11 14:15:09 +0200
committerHenrik Rydberg <rydberg@euromail.se>2010-04-15 06:10:08 +0200
commite5bff8354652f5798d1906004150790377abc775 (patch)
treeec6a47494392169e968ae46835938157c0bcc4f6
parent4846c7cefc0a03ac69576ccebdb8e16055c57461 (diff)
downloadxorg-input-kobomultitouch-e5bff8354652f5798d1906004150790377abc775.tar.gz
xorg-input-kobomultitouch-e5bff8354652f5798d1906004150790377abc775.tar.bz2
xorg-input-kobomultitouch-e5bff8354652f5798d1906004150790377abc775.zip
Define swipe buttons
Define four additional buttons to be used for swiping gestures. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
-rw-r--r--src/hwdata.h6
-rw-r--r--src/multitouch.c9
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);