diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c index 3bdbe8c5b..b6999ca7a 100644 --- a/src/bin/e_comp_object.c +++ b/src/bin/e_comp_object.c @@ -3156,6 +3156,16 @@ e_comp_object_input_area_set(Evas_Object *obj, int x, int y, int w, int h) } } +E_API Eina_Bool +e_comp_object_coords_inside_input_area(Evas_Object *obj, int x, int y) +{ + API_ENTRY EINA_FALSE; + + if (cw->input_obj) + return E_INSIDE(x, y, cw->input_rect.x, cw->input_rect.y, cw->input_rect.w, cw->input_rect.h); + return E_INSIDE(x, y, cw->ec->x, cw->ec->y, cw->ec->w, cw->ec->h); +} + E_API void e_comp_object_frame_geometry_get(Evas_Object *obj, int *l, int *r, int *t, int *b) { diff --git a/src/bin/e_comp_object.h b/src/bin/e_comp_object.h index a6500a377..e5bfae2e6 100644 --- a/src/bin/e_comp_object.h +++ b/src/bin/e_comp_object.h @@ -70,6 +70,7 @@ E_API void e_comp_object_signal_callback_add(Evas_Object *obj, const char *sig, E_API void e_comp_object_signal_callback_del(Evas_Object *obj, const char *sig, const char *src, Edje_Signal_Cb cb); E_API void e_comp_object_signal_callback_del_full(Evas_Object *obj, const char *sig, const char *src, Edje_Signal_Cb cb, const void *data); E_API void e_comp_object_input_area_set(Evas_Object *obj, int x, int y, int w, int h); +E_API Eina_Bool e_comp_object_coords_inside_input_area(Evas_Object *obj, int x, int y); E_API void e_comp_object_damage(Evas_Object *obj, int x, int y, int w, int h); E_API Eina_Bool e_comp_object_damage_exists(Evas_Object *obj); E_API void e_comp_object_render_update_add(Evas_Object *obj);