pixman_region32_fini(®ion);
}
+static void
+_e_comp_wl_client_input_region_input_thread_clone(E_Client *ec, int x, int y, int w, int h)
+{
+ E_Input_Thread_Request_EClient_Data ec_data;
+ Eina_Rectangle *input_rect;
+
+ if (!e_input_thread_check_client_cloning_needed())
+ return;
+
+ memset(&ec_data, 0, sizeof(E_Input_Thread_Request_EClient_Data));
+
+ input_rect = eina_rectangle_new(x, y, w, h);
+
+ if (input_rect)
+ {
+ ec_data.ec = ec;
+ ec_data.rect = input_rect;
+
+ ICINF("[input region] ec(%p), x(%d), y(%d), w(%d), h(%d)\n", ec, EINA_RECTANGLE_ARGS(input_rect));
+ e_input_backend_thread_safe_call(_e_comp_wl_input_thread_input_area_append, &ec_data, sizeof(E_Input_Thread_Request_EClient_Data));
+ }
+}
+
static void
_e_comp_wl_client_input_region_update(E_Client *ec)
{
int x, y, w, h;
int sw = ec->w;
int sh = ec->h;
+ E_Input_Thread_Request_EClient_Data ec_data;
if (!input_region || !pixman_region32_not_empty(input_region) || !ec->first_mapped)
return;
pixman_region32_clear(input_region);
if (pixman_region32_not_empty(®ion))
{
- E_Input_Thread_Request_EClient_Data ec_data;
memset(&ec_data, 0, sizeof(E_Input_Thread_Request_EClient_Data));
e_view_client_input_objs_del(e_client_view_get(ec));
if (e_input_thread_check_client_cloning_needed())
{
ec_data.ec = ec;
- INF("[%s] ec(%p)\n", __func__, ec);
+ ICINF("[%s] ec(%p)\n", __func__, ec);
e_input_backend_thread_safe_call(_e_comp_wl_input_thread_input_area_clear, &ec_data, sizeof(E_Input_Thread_Request_EClient_Data));
}
ELOGF("COMP", "Set Input Area x:%d, y:%d, w:%d, h:%d, ec(%dx%d)",
ec, x, y, w, h, sw, sh);
- e_view_client_input_area_set(e_client_view_get(ec), x, y, w, h);
- if (e_input_thread_check_client_cloning_needed())
- {
- Eina_Rectangle *input_rect;
- input_rect = eina_rectangle_new(x, y, w, h);
-
- if (input_rect)
- {
- ec_data.rect = input_rect;
- INF("[%s] ec(%p), x(%d), y(%d), w(%d), h(%d)\n", __func__, ec, EINA_RECTANGLE_ARGS(input_rect));
- e_input_backend_thread_safe_call(_e_comp_wl_input_thread_input_area_append, &ec_data, sizeof(E_Input_Thread_Request_EClient_Data));
- }
- }
+ e_view_client_input_area_set(e_client_view_get(ec), x, y, w, h);
+ _e_comp_wl_client_input_region_input_thread_clone(ec, x, y, w, h);
}
}
else
{
e_view_client_input_area_set(e_client_view_get(ec), 0, 0, sw, sh);
-
- if (e_input_thread_check_client_cloning_needed())
- {
- E_Input_Thread_Request_EClient_Data ec_data;
- memset(&ec_data, 0, sizeof(E_Input_Thread_Request_EClient_Data));
-
- Eina_Rectangle *input_rect;
- input_rect = eina_rectangle_new(0, 0, sw, sh);
-
- if (input_rect)
- {
- ec_data.ec = ec;
- ec_data.rect = input_rect;
-
- INF("[%s] ec(%p), x(0), y(0), w(%d), h(%d)\n", __func__, ec, sw, sh);
- e_input_backend_thread_safe_call(_e_comp_wl_input_thread_input_area_append, &ec_data, sizeof(E_Input_Thread_Request_EClient_Data));
- }
- }
+ _e_comp_wl_client_input_region_input_thread_clone(ec, 0, 0, sw, sh);
}
pixman_region32_fini(®ion);