oplus: synaptics_hbp: Assign unique keycodes to every gesture
Based on Luk1337's original work for touch v2 Co-authored-by: LuK1337 <priv.luk@gmail.com> Change-Id: I560558bfedadce79bc8e9456db40924aa08c04d0
This commit is contained in:
committed by
Bruno Martins
parent
bd92ad199e
commit
f684185286
@@ -843,9 +843,9 @@ static void syna_dev_report_input_events(struct syna_tcm *tcm)
|
||||
input_report_key(input_dev, KEY_WAKEUP, 0);
|
||||
input_sync(input_dev);
|
||||
} else {
|
||||
input_report_key(input_dev, KEY_F4, 1);
|
||||
input_report_key(input_dev, KEY_GESTURE_START + touch_data->gesture_type, 1);
|
||||
input_sync(input_dev);
|
||||
input_report_key(input_dev, KEY_F4, 0);
|
||||
input_report_key(input_dev, KEY_GESTURE_START + touch_data->gesture_type, 0);
|
||||
input_sync(input_dev);
|
||||
}
|
||||
}
|
||||
@@ -971,7 +971,7 @@ exit:
|
||||
*/
|
||||
static int syna_dev_create_input_device(struct syna_tcm *tcm)
|
||||
{
|
||||
int retval = 0;
|
||||
int retval = 0, i = 0;
|
||||
struct tcm_dev *tcm_dev = tcm->tcm_dev;
|
||||
struct input_dev *input_dev = NULL;
|
||||
|
||||
@@ -1024,8 +1024,9 @@ static int syna_dev_create_input_device(struct syna_tcm *tcm)
|
||||
#ifdef ENABLE_WAKEUP_GESTURE
|
||||
set_bit(KEY_WAKEUP, input_dev->keybit);
|
||||
input_set_capability(input_dev, EV_KEY, KEY_WAKEUP);
|
||||
set_bit(KEY_F4, input_dev->keybit);
|
||||
input_set_capability(input_dev, EV_KEY, KEY_F4);
|
||||
for (i = UP_VEE; i <= S_GESTURE; i++) {
|
||||
set_bit(KEY_GESTURE_START + i, input_dev->keybit);
|
||||
}
|
||||
set_bit(KEY_UNDER_WATER, input_dev->keybit);
|
||||
input_set_capability(input_dev, EV_KEY, KEY_UNDER_WATER);
|
||||
set_bit(KEY_ON_WATER, input_dev->keybit);
|
||||
|
||||
@@ -596,6 +596,7 @@ struct tcm_touch_data_blob {
|
||||
|
||||
/* for gesture */
|
||||
unsigned int gesture_id;
|
||||
unsigned int gesture_type;
|
||||
struct tcm_gesture_data_blob gesture_data;
|
||||
unsigned char data_point[24]; /*6 points*/
|
||||
unsigned char extra_gesture_info[6];
|
||||
|
||||
@@ -88,6 +88,7 @@ enum gesture_classification {
|
||||
#define UNDER_WATER 0x85
|
||||
#define ON_WATER 0x86
|
||||
|
||||
#define KEY_GESTURE_START 246
|
||||
|
||||
#define UNKOWN_GESTURE 0
|
||||
#define DOU_TAP 1 /* double tap*/
|
||||
|
||||
Reference in New Issue
Block a user