ecs: added gesture event handling 55/13955/1
authorGiWoong Kim <giwoong.kim@samsung.com>
Tue, 17 Dec 2013 07:18:03 +0000 (16:18 +0900)
committerGiWoong Kim <giwoong.kim@samsung.com>
Thu, 19 Dec 2013 04:07:39 +0000 (13:07 +0900)
Emulator must handle the gesture events, according as
new feature was added in Emulator Control Panel.

Change-Id: Ic8cbc0b34319176ef9b19451aa8d60f66a95a48a
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
tizen/src/ecs/ecs_msg.c

index 63e336bf5bdf706bdac54f5b50a0f243d890bb30..7909abb31e4851c03a4fdd2f4df7de7888a79604 100644 (file)
@@ -363,10 +363,41 @@ bool msgproc_device_req(ECS_Client* ccli, ECS__DeviceReq* msg)
             do_host_kbd_enable(is_on);
             notify_host_kbd_state(is_on);
         }
+    } else if (!strncmp(cmd, "gesture", strlen("gesture"))) {
+        // TODO: release multi-touch
+
+        LOG("%s\n", data);
+
+        char token[] = "#";
+
+        if (group == 1) { /* HW key event */
+            char *section = strtok(data, token);
+            int event_type = atoi(section);
+
+            section = strtok(NULL, token);
+            int keycode = atoi(section);
+
+            do_hw_key_event(event_type, keycode);
+        } else { /* touch event */
+            char *section = strtok(data, token);
+            int event_type = atoi(section);
+
+            section = strtok(NULL, token);
+            int xx = atoi(section);
+
+            section = strtok(NULL, token);
+            int yy = atoi(section);
+
+            section = strtok(NULL, token);
+            int zz = atoi(section);
+
+            do_mouse_event(1/* LEFT */, event_type, 0, 0, xx, yy, zz);
+        }
     }
 
-    if (data)
+    if (data) {
         g_free(data);
+    }
 
     return true;
 }