From 7e708d2420d87f2d1234f73c44472977e7c05f5a Mon Sep 17 00:00:00 2001 From: JengHyun Kang Date: Thu, 2 Feb 2017 12:23:41 +0900 Subject: [PATCH] inputgenerator: Request input generator initialize using device class Change-Id: I405701e8946e6a7f761bd34e9d43d605ac7b1a01 --- src/efl_util.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/efl_util.c b/src/efl_util.c index 3ae9094..5162b57 100644 --- a/src/efl_util.c +++ b/src/efl_util.c @@ -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); -- 2.7.4