Move all of the definitions and internal signatures to e_devicemgr_intern.h.
Change-Id: Ie89137b435aeb46c7355ad1dd530826c6518543d
#include "e.h"
#include "e_devicemgr_intern.h"
-#include "e_devicemgr_private.h"
+
+#include <tizen-extension-server-protocol.h>
E_API E_Devicemgr *e_devicemgr;
#include "e.h"
-#include "e_devicemgr_private.h"
+#include "e_devicemgr_intern.h"
#include "e_input_intern.h"
+#include <tizen-extension-server-protocol.h>
+
static void _e_devicemgr_block_client_cb_destroy(struct wl_listener *l, void *data);
static void
#include "e.h"
-#include "e_devicemgr_private.h"
+#include "e_devicemgr_intern.h"
#define E_DEVICEMGR_INPUT_DFLT_BACK_KEYCODE 166
#include "e.h"
#include "e_devicemgr_intern.h"
-#include "e_devicemgr_private.h"
#include "e_input_event.h"
#include "e_comp_wl_intern.h"
+#include <tizen-extension-server-protocol.h>
+
Eina_Bool
e_devicemgr_strcmp(const char *dst, const char *src)
{
#include "e.h"
#include "e_devicemgr_intern.h"
-#include "e_devicemgr_private.h"
#include "e_input_intern.h"
#include <glib.h>
+#include <linux/uinput.h>
+#include <tizen-extension-server-protocol.h>
+
static Ecore_Device_Class
_e_devicemgr_inputgen_class_to_ecore_device_class(unsigned int clas)
#ifndef E_DEVICEMGR_INTERN_H
#define E_DEVICEMGR_INTERN_H
+#ifdef ENABLE_TTRACE
+#include <ttrace.h>
+#endif
+
+#ifdef HAVE_CYNARA
+#include <cynara-session.h>
+#include <cynara-client.h>
+#include <cynara-creds-socket.h>
+#include <sys/smack.h>
+#endif
+
+#include <linux/uinput.h>
+
+#ifdef ENABLE_TTRACE
+#define TRACE_INPUT_DEVICE_BEGIN(NAME) traceBegin(TTRACE_TAG_INPUT, "INPUT:DEVMGR:"#NAME)
+#define TRACE_INPUT_DEVICE_END() traceEnd(TTRACE_TAG_INPUT)
+#else
+#define TRACE_INPUT_DEVICE_BEGIN(NAME)
+#define TRACE_INPUT_DEVICE_END()
+#endif
+
+#define DMERR(msg, ARG...) ERR("[%s:%d] "msg, __FUNCTION__, __LINE__, ##ARG)
+#define DMWRN(msg, ARG...) WRN("[%s:%d] "msg, __FUNCTION__, __LINE__, ##ARG)
+#define DMINF(msg, ARG...) INF("[%s:%d] "msg, __FUNCTION__, __LINE__, ##ARG)
+#define DMDBG(msg, ARG...) DBG("[%s:%d] "msg, __FUNCTION__, __LINE__, ##ARG)
+
+#define INPUT_GENERATOR_DEVICE "Input Generator"
+#define DETENT_DEVICE_NAME "tizen_detent"
+#define INPUTGEN_MAX_BTN 16
+
+typedef struct _E_Devicemgr_Input_Device_Mgr_Data E_Devicemgr_Input_Device_Mgr_Data;
+typedef struct _E_Devicemgr_Input_Device_User_Data E_Devicemgr_Input_Device_User_Data;
+typedef struct _E_Devicemgr_Coords E_Devicemgr_Coords;
+typedef struct _E_Devicemgr_Inputgen_Touch_Axis E_Devicemgr_Inputgen_Touch_Axis;
+typedef struct _E_Devicemgr_Inputgen_Client_Data E_Devicemgr_Inputgen_Client_Data;
+typedef struct _E_Devicemgr_Inputgen_Client_Global_Data E_Devicemgr_Inputgen_Client_Global_Data;
+typedef struct _E_Devicemgr_Inputgen_Device_Data E_Devicemgr_Inputgen_Device_Data;
+typedef struct _E_Devicemgr_Inputgen_Resource_Data E_Devicemgr_Inputgen_Resource_Data;
+
+struct _E_Devicemgr_Input_Device_Mgr_Data
+{
+ struct wl_resource *resource;
+ Eina_Bool is_first_resource : 1;
+ Eina_List *user_data_list;
+};
+
+struct _E_Devicemgr_Input_Device_User_Data
+{
+ E_Devicemgr_Input_Device *dev;
+ struct wl_resource *dev_res;
+ struct wl_resource *dev_mgr_res;
+ struct wl_resource *seat_res;
+ E_Devicemgr_Input_Device_Mgr_Data *mgr_data;
+};
+
+struct _E_Devicemgr_Coords
+{
+ int x, y;
+};
+
+struct _E_Devicemgr_Inputgen_Client_Data
+{
+ struct wl_client *client;
+ int ref;
+};
+
+struct _E_Devicemgr_Inputgen_Client_Global_Data
+{
+ struct wl_client *client;
+ unsigned int clas;
+};
+
+struct _E_Devicemgr_Inputgen_Touch_Axis
+{
+ double radius_x;
+ double radius_y;
+ double pressure;
+ double angle;
+ double palm;
+};
+
+struct _E_Devicemgr_Inputgen_Device_Data
+{
+ int uinp_fd;
+ char *identifier;
+ char name[UINPUT_MAX_NAME_SIZE];
+ Ecore_Device_Class clas;
+ struct
+ {
+ unsigned int pressed;
+ E_Devicemgr_Coords *coords;
+ E_Devicemgr_Inputgen_Touch_Axis *axis;
+ E_Devicemgr_Inputgen_Touch_Axis axis_tmp;
+ } touch;
+ struct
+ {
+ unsigned int pressed;
+ E_Devicemgr_Coords coords;
+ } mouse;
+ struct
+ {
+ Eina_List *pressed;
+ } key;
+
+ Eina_List *clients;
+};
+
+struct _E_Devicemgr_Inputgen_Resource_Data
+{
+ struct wl_resource *resource;
+ char name[UINPUT_MAX_NAME_SIZE];
+ Ecore_Timer *sync_timer;
+};
+
+struct _E_Devicemgr_Conf_Edd
+{
+ struct
+ {
+ Eina_Bool button_remap_enable; // enable feature of remap mouse right button to back key
+ Eina_Bool virtual_key_device_enable; // create a virtual keyboard device
+ Eina_Bool virtual_mouse_device_enable; // create a virtual mouse device
+ int back_keycode; // keycode of back key
+ } input;
+};
+
+struct _E_Devicemgr_Config_Data
+{
+ E_Config_DD *conf_edd;
+ E_Devicemgr_Conf_Edd *conf;
+};
+
+struct _E_Devicemgr_Wl_Data
+{
+ struct wl_global *global;
+ Eina_List *mgr_data_list;
+
+#ifdef HAVE_CYNARA
+ cynara *p_cynara;
+ Eina_Bool cynara_initialized;
+#endif
+};
+
typedef Eina_Bool (*E_Devicemgr_Intercept_Hook_Cb) (void *data, int point, void *event);
typedef struct _E_Devicemgr_Intercept_Hook E_Devicemgr_Intercept_Hook;
EINTERN Eina_Bool e_devicemgr_block_internal_add(Ecore_Device_Class clas, Eina_Bool all_clas, uint32_t duration, E_Devicemgr_Block_Expire_Cb cb_func, void *cb_data);
EINTERN Eina_Bool e_devicemgr_block_internal_remove(E_Devicemgr_Block_Expire_Cb cb_func, void *cb_data);
+EINTERN Eina_Bool e_devicemgr_block_add_internal(uint32_t clas, uint32_t duration, E_Devicemgr_Block_Expire_Cb cb_func, void *cb_data);
+EINTERN Eina_Bool e_devicemgr_block_remove_internal(E_Devicemgr_Block_Expire_Cb cb_func, void *cb_data);
EINTERN Eina_Bool e_devicemgr_keyboard_grab_subtype_is_grabbed(Ecore_Device_Subclass subclas);
+EINTERN int e_devicemgr_keyboard_ungrab(struct wl_client *client, struct wl_resource *surface);
+EINTERN int e_devicemgr_keyboard_grab(struct wl_client *client, struct wl_resource *surface, uint32_t subclas);
+
+
+EINTERN void e_devicemgr_conf_init(E_Devicemgr_Config_Data *dconfig);
+EINTERN void e_devicemgr_conf_fini(E_Devicemgr_Config_Data *dconfig);
+
+EINTERN Eina_Bool e_devicemgr_wl_init(void);
+EINTERN void e_devicemgr_wl_shutdown(void);
+
+EINTERN void e_devicemgr_wl_device_add(E_Devicemgr_Input_Device *dev);
+EINTERN void e_devicemgr_wl_device_del(E_Devicemgr_Input_Device *dev);
+EINTERN void e_devicemgr_wl_device_update(E_Devicemgr_Input_Device *dev);
+
+EINTERN void e_devicemgr_wl_block_send_expired(struct wl_resource *resource);
+EINTERN void e_devicemgr_wl_detent_send_event(int detent);
+EINTERN void e_devicemgr_wl_touch_max_count_send(int slot, struct wl_resource *res, struct wl_resource *seat_res);
+EINTERN void e_devicemgr_wl_generator_with_sync_send_event(struct wl_resource *resource, int error);
+
+EINTERN int e_devicemgr_block_add(struct wl_client *client, struct wl_resource *resource, uint32_t clas, uint32_t duration);
+EINTERN int e_devicemgr_block_remove(struct wl_client *client);
+
+EINTERN int e_devicemgr_inputgen_add(struct wl_client *client, struct wl_resource *resource, uint32_t clas, const char *name);
+EINTERN void e_devicemgr_inputgen_add_with_sync(struct wl_client *client, struct wl_resource *resource, uint32_t clas, const char *name);
+EINTERN void e_devicemgr_inputgen_remove(struct wl_client *client, struct wl_resource *resource, uint32_t clas);
+EINTERN int e_devicemgr_inputgen_generate_key(struct wl_client *client, struct wl_resource *resource, const char *keyname, Eina_Bool pressed);
+EINTERN int e_devicemgr_inputgen_generate_pointer(struct wl_client *client, struct wl_resource *resource, uint32_t type, uint32_t x, uint32_t y, uint32_t button);
+EINTERN int e_devicemgr_inputgen_generate_touch(struct wl_client *client, struct wl_resource *resource, uint32_t type, uint32_t x, uint32_t y, uint32_t finger);
+EINTERN void e_devicemgr_inputgen_get_device_info(E_Devicemgr_Input_Device *dev);
+EINTERN int e_devicemgr_inputgen_generate_wheel(struct wl_client *client, struct wl_resource *resource, uint32_t type, int32_t value);
+EINTERN int e_devicemgr_inputgen_touch_axis_store(struct wl_client *client, struct wl_resource *resource, uint32_t type, double value);
+EINTERN void e_devicemgr_inputgen_device_ready_send(E_Devicemgr_Input_Device *dev);
+
+EINTERN int e_devicemgr_create_virtual_device(Ecore_Device_Class clas, const char *name);
+EINTERN void e_devicemgr_destroy_virtual_device(int uinp_fd);
+
+EINTERN Eina_Bool e_devicemgr_strcmp(const char *dst, const char *src);
+
+EINTERN int e_devicemgr_input_pointer_warp(struct wl_client *client, struct wl_resource *resource, struct wl_resource *surface, wl_fixed_t x, wl_fixed_t y);
+
+EINTERN Eina_Bool e_devicemgr_input_init(void);
+EINTERN void e_devicemgr_input_shutdown(void);
+
#endif
#include "e.h"
-#include "e_devicemgr_private.h"
+#include "e_devicemgr_intern.h"
#include "e_input_intern.h"
#include "e_comp_wl_intern.h"
+#include <tizen-extension-server-protocol.h>
+
static void _e_devicemgr_keyboard_grab_client_cb_destroy(struct wl_listener *l, void *data);
EINTERN Eina_Bool
+++ /dev/null
-#ifdef HAVE_CYNARA
-#include <cynara-session.h>
-#include <cynara-client.h>
-#include <cynara-creds-socket.h>
-#include <sys/smack.h>
-#endif
-#include <tizen-extension-server-protocol.h>
-#include <linux/uinput.h>
-
-#ifdef TRACE_INPUT_BEGIN
-#undef TRACE_INPUT_BEGIN
-#endif
-#ifdef TRACE_INPUT_END
-#undef TRACE_INPUT_END
-#endif
-
-#ifdef ENABLE_TTRACE
-#include <ttrace.h>
-
-#define TRACE_INPUT_BEGIN(NAME) traceBegin(TTRACE_TAG_INPUT, "INPUT:DEVMGR:"#NAME)
-#define TRACE_INPUT_END() traceEnd(TTRACE_TAG_INPUT)
-#else
-#define TRACE_INPUT_BEGIN(NAME)
-#define TRACE_INPUT_END()
-#endif
-
-#define DMERR(msg, ARG...) ERR("[%s:%d] "msg, __FUNCTION__, __LINE__, ##ARG)
-#define DMWRN(msg, ARG...) WRN("[%s:%d] "msg, __FUNCTION__, __LINE__, ##ARG)
-#define DMINF(msg, ARG...) INF("[%s:%d] "msg, __FUNCTION__, __LINE__, ##ARG)
-#define DMDBG(msg, ARG...) DBG("[%s:%d] "msg, __FUNCTION__, __LINE__, ##ARG)
-
-#ifdef HAVE_CYNARA
-#include <cynara-session.h>
-#include <cynara-client.h>
-#include <cynara-creds-socket.h>
-#endif
-
-#define INPUT_GENERATOR_DEVICE "Input Generator"
-#define DETENT_DEVICE_NAME "tizen_detent"
-#define INPUTGEN_MAX_BTN 16
-
-typedef struct _E_Devicemgr_Input_Device_Mgr_Data E_Devicemgr_Input_Device_Mgr_Data;
-typedef struct _E_Devicemgr_Input_Device_User_Data E_Devicemgr_Input_Device_User_Data;
-typedef struct _E_Devicemgr_Coords E_Devicemgr_Coords;
-typedef struct _E_Devicemgr_Inputgen_Touch_Axis E_Devicemgr_Inputgen_Touch_Axis;
-typedef struct _E_Devicemgr_Inputgen_Client_Data E_Devicemgr_Inputgen_Client_Data;
-typedef struct _E_Devicemgr_Inputgen_Client_Global_Data E_Devicemgr_Inputgen_Client_Global_Data;
-typedef struct _E_Devicemgr_Inputgen_Device_Data E_Devicemgr_Inputgen_Device_Data;
-typedef struct _E_Devicemgr_Inputgen_Resource_Data E_Devicemgr_Inputgen_Resource_Data;
-
-struct _E_Devicemgr_Input_Device_Mgr_Data
-{
- struct wl_resource *resource;
- Eina_Bool is_first_resource : 1;
- Eina_List *user_data_list;
-};
-
-struct _E_Devicemgr_Input_Device_User_Data
-{
- E_Devicemgr_Input_Device *dev;
- struct wl_resource *dev_res;
- struct wl_resource *dev_mgr_res;
- struct wl_resource *seat_res;
- E_Devicemgr_Input_Device_Mgr_Data *mgr_data;
-};
-
-struct _E_Devicemgr_Coords
-{
- int x, y;
-};
-
-struct _E_Devicemgr_Inputgen_Client_Data
-{
- struct wl_client *client;
- int ref;
-};
-
-struct _E_Devicemgr_Inputgen_Client_Global_Data
-{
- struct wl_client *client;
- unsigned int clas;
-};
-
-struct _E_Devicemgr_Inputgen_Touch_Axis
-{
- double radius_x;
- double radius_y;
- double pressure;
- double angle;
- double palm;
-};
-
-struct _E_Devicemgr_Inputgen_Device_Data
-{
- int uinp_fd;
- char *identifier;
- char name[UINPUT_MAX_NAME_SIZE];
- Ecore_Device_Class clas;
- struct
- {
- unsigned int pressed;
- E_Devicemgr_Coords *coords;
- E_Devicemgr_Inputgen_Touch_Axis *axis;
- E_Devicemgr_Inputgen_Touch_Axis axis_tmp;
- } touch;
- struct
- {
- unsigned int pressed;
- E_Devicemgr_Coords coords;
- } mouse;
- struct
- {
- Eina_List *pressed;
- } key;
-
- Eina_List *clients;
-};
-
-struct _E_Devicemgr_Inputgen_Resource_Data
-{
- struct wl_resource *resource;
- char name[UINPUT_MAX_NAME_SIZE];
- Ecore_Timer *sync_timer;
-};
-
-struct _E_Devicemgr_Conf_Edd
-{
- struct
- {
- Eina_Bool button_remap_enable; // enable feature of remap mouse right button to back key
- Eina_Bool virtual_key_device_enable; // create a virtual keyboard device
- Eina_Bool virtual_mouse_device_enable; // create a virtual mouse device
- int back_keycode; // keycode of back key
- } input;
-};
-
-struct _E_Devicemgr_Config_Data
-{
- E_Config_DD *conf_edd;
- E_Devicemgr_Conf_Edd *conf;
-};
-
-struct _E_Devicemgr_Wl_Data
-{
- struct wl_global *global;
- Eina_List *mgr_data_list;
-
-#ifdef HAVE_CYNARA
- cynara *p_cynara;
- Eina_Bool cynara_initialized;
-#endif
-};
-
-void e_devicemgr_conf_init(E_Devicemgr_Config_Data *dconfig);
-void e_devicemgr_conf_fini(E_Devicemgr_Config_Data *dconfig);
-
-Eina_Bool e_devicemgr_wl_init(void);
-void e_devicemgr_wl_shutdown(void);
-void e_devicemgr_wl_device_add(E_Devicemgr_Input_Device *dev);
-void e_devicemgr_wl_device_del(E_Devicemgr_Input_Device *dev);
-void e_devicemgr_wl_device_update(E_Devicemgr_Input_Device *dev);
-
-void e_devicemgr_wl_block_send_expired(struct wl_resource *resource);
-int e_devicemgr_block_add(struct wl_client *client, struct wl_resource *resource, uint32_t clas, uint32_t duration);
-int e_devicemgr_block_remove(struct wl_client *client);
-
-Eina_Bool e_devicemgr_block_add_internal(uint32_t clas, uint32_t duration, E_Devicemgr_Block_Expire_Cb cb_func, void *cb_data);
-Eina_Bool e_devicemgr_block_remove_internal(E_Devicemgr_Block_Expire_Cb cb_func, void *cb_data);
-
-int e_devicemgr_inputgen_add(struct wl_client *client, struct wl_resource *resource, uint32_t clas, const char *name);
-void e_devicemgr_inputgen_add_with_sync(struct wl_client *client, struct wl_resource *resource, uint32_t clas, const char *name);
-void e_devicemgr_inputgen_remove(struct wl_client *client, struct wl_resource *resource, uint32_t clas);
-int e_devicemgr_inputgen_generate_key(struct wl_client *client, struct wl_resource *resource, const char *keyname, Eina_Bool pressed);
-int e_devicemgr_inputgen_generate_pointer(struct wl_client *client, struct wl_resource *resource, uint32_t type, uint32_t x, uint32_t y, uint32_t button);
-int e_devicemgr_inputgen_generate_touch(struct wl_client *client, struct wl_resource *resource, uint32_t type, uint32_t x, uint32_t y, uint32_t finger);
-void e_devicemgr_inputgen_get_device_info(E_Devicemgr_Input_Device *dev);
-int e_devicemgr_inputgen_generate_wheel(struct wl_client *client, struct wl_resource *resource, uint32_t type, int32_t value);
-int e_devicemgr_inputgen_touch_axis_store(struct wl_client *client, struct wl_resource *resource, uint32_t type, double value);
-
-int e_devicemgr_create_virtual_device(Ecore_Device_Class clas, const char *name);
-void e_devicemgr_destroy_virtual_device(int uinp_fd);
-
-Eina_Bool e_devicemgr_strcmp(const char *dst, const char *src);
-int e_devicemgr_input_pointer_warp(struct wl_client *client, struct wl_resource *resource, struct wl_resource *surface, wl_fixed_t x, wl_fixed_t y);
-void e_devicemgr_wl_detent_send_event(int detent);
-Eina_Bool e_devicemgr_input_init(void);
-void e_devicemgr_input_shutdown(void);
-
-void e_devicemgr_wl_touch_max_count_send(int slot, struct wl_resource *res, struct wl_resource *seat_res);
-void e_devicemgr_wl_generator_with_sync_send_event(struct wl_resource *resource, int error);
-void e_devicemgr_inputgen_device_ready_send(E_Devicemgr_Input_Device *dev);
-
-int e_devicemgr_keyboard_ungrab(struct wl_client *client, struct wl_resource *surface);
-int e_devicemgr_keyboard_grab(struct wl_client *client, struct wl_resource *surface, uint32_t subclas);
-
#include "e.h"
-#include "e_devicemgr_private.h"
+#include "e_devicemgr_intern.h"
#include "e_input_intern.h"
#include "e_comp_wl_intern.h"
#include "e_privilege_intern.h"
+#include <tizen-extension-server-protocol.h>
+
#ifdef HAVE_CYNARA
#define E_DEVMGR_CYNARA_ERROR_CHECK_GOTO(func_name, ret, label) \
do \
case LIBINPUT_EVENT_DEVICE_ADDED:
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_BEGIN(_device_added);
+ TRACE_INPUT_DEVICE_BEGIN(_device_added);
ELOGF("INPUT", "_device_added|B|", NULL);
}
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_END();
+ TRACE_INPUT_DEVICE_END();
ELOGF("INPUT", "_device_added|E|", NULL);
}
break;
case LIBINPUT_EVENT_DEVICE_REMOVED:
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_BEGIN(_device_removed);
+ TRACE_INPUT_DEVICE_BEGIN(_device_removed);
ELOGF("INPUT", "_device_removed|B|", NULL);
}
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_END();
+ TRACE_INPUT_DEVICE_END();
ELOGF("INPUT", "_device_removed|E|", NULL);
}
break;
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_BEGIN(_cb_input_dispatch);
+ TRACE_INPUT_DEVICE_BEGIN(_cb_input_dispatch);
ELOGF("INPUT", "_cb_input_dispatch|B|", NULL);
}
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_END();
+ TRACE_INPUT_DEVICE_END();
ELOGF("INPUT", "_cb_input_dispatch|E|", NULL);
}
{
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_BEGIN(e_comp_wl_focused_client_flush);
+ TRACE_INPUT_DEVICE_BEGIN(e_comp_wl_focused_client_flush);
ELOGF("INPUT", "e_comp_wl_focused_client_flush|B|", NULL);
}
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_END();
+ TRACE_INPUT_DEVICE_END();
ELOGF("INPUT", "e_comp_wl_focused_client_flush|E|", NULL);
}
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_BEGIN(input_dispatch);
+ TRACE_INPUT_DEVICE_BEGIN(input_dispatch);
ELOGF("INPUT", "input_dispatch|B|", NULL);
}
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_BEGIN(libinput_dispatch);
+ TRACE_INPUT_DEVICE_BEGIN(libinput_dispatch);
ELOGF("INPUT", "libinput_dispatch|B|", NULL);
}
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_END();
+ TRACE_INPUT_DEVICE_END();
ELOGF("INPUT", "libinput_dispatch|E|", NULL);
}
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_BEGIN(_input_events_process);
+ TRACE_INPUT_DEVICE_BEGIN(_input_events_process);
ELOGF("INPUT", "_input_events_process|B|", NULL);
}
if (e_config->key_input_ttrace_enable)
{
- TRACE_INPUT_END();
+ TRACE_INPUT_DEVICE_END();
ELOGF("INPUT", "_input_events_process|E|", NULL);
- TRACE_INPUT_END();
+ TRACE_INPUT_DEVICE_END();
ELOGF("INPUT", "input_dispatch|E|", NULL);
}