inputgenerator: Request input generator initialize using device class 07/112607/1
authorJengHyun Kang <jhyuni.kang@samsung.com>
Thu, 2 Feb 2017 03:23:41 +0000 (12:23 +0900)
committerJengHyun Kang <jhyuni.kang@samsung.com>
Thu, 2 Feb 2017 03:23:41 +0000 (12:23 +0900)
Change-Id: I405701e8946e6a7f761bd34e9d43d605ac7b1a01

src/efl_util.c

index 3ae9094..5162b57 100644 (file)
@@ -1264,6 +1264,7 @@ efl_util_input_initialize_generator(unsigned int dev_type)
 {
    int ret = EFL_UTIL_ERROR_NONE;
    efl_util_inputgen_h inputgen_h = NULL;
+   unsigned int clas = 0x0;
 
    if (!dev_type ||
         dev_type & ~(EFL_UTIL_INPUT_DEVTYPE_TOUCHSCREEN
@@ -1290,10 +1291,17 @@ efl_util_input_initialize_generator(unsigned int dev_type)
         goto out;
      }
 
+   if (dev_type & EFL_UTIL_INPUT_DEVTYPE_TOUCHSCREEN)
+     clas |= TIZEN_INPUT_DEVICE_MANAGER_CLAS_TOUCHSCREEN;
+   if (dev_type & EFL_UTIL_INPUT_DEVTYPE_KEYBOARD)
+     clas |= TIZEN_INPUT_DEVICE_MANAGER_CLAS_KEYBOARD;
+   if (dev_type & EFL_UTIL_INPUT_DEVTYPE_POINTER)
+     clas |= TIZEN_INPUT_DEVICE_MANAGER_CLAS_MOUSE;
+
    while (!_eflutil.wl.devmgr.devicemgr)
      wl_display_dispatch_queue(_eflutil.wl.dpy, _eflutil.wl.queue);
 
-   tizen_input_device_manager_init_generator(_eflutil.wl.devmgr.devicemgr);
+   tizen_input_device_manager_init_generator(_eflutil.wl.devmgr.devicemgr, clas);
 
    while (_eflutil.wl.devmgr.request_notified == -1)
      wl_display_dispatch_queue(_eflutil.wl.dpy, _eflutil.wl.queue);
@@ -1320,14 +1328,22 @@ API int
 efl_util_input_deinitialize_generator(efl_util_inputgen_h inputgen_h)
 {
    int ret = EFL_UTIL_ERROR_NONE;
+   unsigned int clas = 0x0;
    EINA_SAFETY_ON_NULL_RETURN_VAL(inputgen_h, EFL_UTIL_ERROR_INVALID_PARAMETER);
 
+   if (inputgen_h->init_type & EFL_UTIL_INPUT_DEVTYPE_TOUCHSCREEN)
+     clas |= TIZEN_INPUT_DEVICE_MANAGER_CLAS_TOUCHSCREEN;
+   if (inputgen_h->init_type & EFL_UTIL_INPUT_DEVTYPE_KEYBOARD)
+     clas |= TIZEN_INPUT_DEVICE_MANAGER_CLAS_KEYBOARD;
+   if (inputgen_h->init_type & EFL_UTIL_INPUT_DEVTYPE_POINTER)
+     clas |= TIZEN_INPUT_DEVICE_MANAGER_CLAS_MOUSE;
+
    free(inputgen_h);
    inputgen_h = NULL;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(_eflutil.wl.devmgr.devicemgr, EFL_UTIL_ERROR_INVALID_PARAMETER);
 
-   tizen_input_device_manager_deinit_generator(_eflutil.wl.devmgr.devicemgr);
+   tizen_input_device_manager_deinit_generator(_eflutil.wl.devmgr.devicemgr, clas);
 
    while (_eflutil.wl.devmgr.request_notified == -1)
      wl_display_dispatch_queue(_eflutil.wl.dpy, _eflutil.wl.queue);