efl_input: remove the API of efl_input_instance_get

there is basically no reason for this API. You can only use the API when
you know the class, when you know the class you can also just know the
function to call to get this API.
The reason this API needs to go is that we don't want to use
polymorphism on class-functions.

ref T7675

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7900
This commit is contained in:
Marcel Hollerbach 2019-02-09 19:08:45 +01:00
parent 33c4041950
commit 3b2a5a429b
12 changed files with 43 additions and 53 deletions

View File

@ -3618,7 +3618,7 @@ _ecore_evas_mouse_move_process_internal(Ecore_Evas *ee,
if (!send_event) return;
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, ee->evas, (void **) &ev);
evt = efl_input_pointer_instance_get( ee->evas, (void **) &ev);
if (!evt) return;
ev->action = EFL_POINTER_ACTION_MOVE;
@ -4811,7 +4811,7 @@ _direct_mouse_updown(Ecore_Evas *ee, const Ecore_Event_Mouse_Button *info, Efl_P
* modifiers (already passed to evas, no need to do anything)
*/
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, e, (void **) &ev);
evt = efl_input_pointer_instance_get( e, (void **) &ev);
if (!evt) return EINA_FALSE;
ev->action = action;
@ -4875,7 +4875,7 @@ _direct_mouse_move_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Move *info)
* modifiers (already passed to evas, no need to do anything)
*/
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, e, (void **) &ev);
evt = efl_input_pointer_instance_get( e, (void **) &ev);
if (!evt) return EINA_FALSE;
ev->action = EFL_POINTER_ACTION_MOVE;
@ -4915,7 +4915,7 @@ _direct_mouse_wheel_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Wheel *info)
* modifiers (already passed to evas, no need to do anything)
*/
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, e, (void **) &ev);
evt = efl_input_pointer_instance_get( e, (void **) &ev);
if (!evt) return EINA_FALSE;
ev->action = EFL_POINTER_ACTION_WHEEL;
@ -4947,7 +4947,7 @@ _direct_mouse_inout(Ecore_Evas *ee, const Ecore_Event_Mouse_IO *info, Efl_Pointe
* modifiers (already passed to evas, no need to do anything)
*/
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, e, (void **) &ev);
evt = efl_input_pointer_instance_get( e, (void **) &ev);
if (!evt) return EINA_FALSE;
ev->action = action;
@ -4991,7 +4991,7 @@ _direct_axis_update_cb(Ecore_Evas *ee, const Ecore_Event_Axis_Update *info)
* window, root_window, event_window
*/
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, e, (void **) &ev);
evt = efl_input_pointer_instance_get( e, (void **) &ev);
if (!ev) return EINA_FALSE;
ev->action = EFL_POINTER_ACTION_AXIS;
@ -5110,7 +5110,7 @@ _direct_key_updown_cb(Ecore_Evas *ee, const Ecore_Event_Key *info, Eina_Bool dow
* modifiers (already passed to evas, no need to do anything)
*/
evt = efl_input_instance_get(EFL_INPUT_KEY_CLASS, e, (void **) &ev);
evt = efl_input_key_instance_get( e, (void **) &ev);
if (!evt || !ev) return EINA_FALSE;
ev->timestamp = info->timestamp;

View File

@ -2534,7 +2534,7 @@ _efl_ui_win_efl_canvas_scene_pointer_iterate(const Eo *obj, Efl_Ui_Win_Data *sd,
Efl_Input_Pointer *ptr;
double x, y;
ptr = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, (Eo *) obj, (void **) &ptrdata);
ptr = efl_input_pointer_instance_get( (Eo *) obj, (void **) &ptrdata);
if (!ptrdata) break;
ptrdata->tool = evas_touch_point_list_nth_id_get(sd->evas, i);

View File

@ -74,7 +74,11 @@ EOAPI void evas_canvas_seat_focus_out(Eo *obj, Efl_Input_Device *seat);
EOAPI Eo* evas_canvas_seat_focus_get(const Eo *obj, Efl_Input_Device *seat);
EOAPI void *efl_input_legacy_info_get(const Eo *obj);
EOAPI Eo *efl_input_instance_get(const Eo *obj, Efl_Object *owner, void **priv);
EOAPI Eo *efl_input_focus_instance_get(Efl_Object *owner, void **priv);
EOAPI Eo *efl_input_hold_instance_get(Efl_Object *owner, void **priv);
EOAPI Eo *efl_input_key_instance_get(Efl_Object *owner, void **priv);
EOAPI Eo *efl_input_pointer_instance_get(Efl_Object *owner, void **priv);
EWAPI extern const Efl_Event_Description _EVAS_CANVAS_EVENT_RENDER_FLUSH_PRE;
#define EVAS_CANVAS_EVENT_RENDER_FLUSH_PRE (&(_EVAS_CANVAS_EVENT_RENDER_FLUSH_PRE))

View File

@ -95,7 +95,7 @@ _noref_death(void *data EINA_UNUSED, const Efl_Event *event)
}
Efl_Input_Event *
efl_input_event_instance_get(Eo *klass, Eo *owner)
efl_input_event_instance_get(const Eo *klass, Eo *owner)
{
Efl_Input_Event *evt;

View File

@ -101,14 +101,14 @@ _efl_input_focus_efl_duplicate_duplicate(const Eo *obj, Efl_Input_Focus_Data *pd
return evt;
}
EOLIAN static Efl_Input_Focus *
_efl_input_focus_efl_input_event_instance_get(Eo *klass, void *_pd EINA_UNUSED,
Eo *owner, void **priv)
EOAPI Eo*
efl_input_focus_instance_get(Efl_Object *owner, void **priv)
{
Efl_Input_Focus_Data *ev;
Efl_Input_Focus *evt;
evt = efl_input_event_instance_get(klass, owner);
evt = efl_input_event_instance_get(EFL_INPUT_FOCUS_CLASS, owner);
if (!evt) return NULL;
ev = efl_data_scope_get(evt, MY_CLASS);
@ -148,7 +148,4 @@ _efl_input_focus_efl_input_event_event_flags_get(const Eo *obj EINA_UNUSED, Efl_
/* Internal EO APIs */
#define EFL_INPUT_FOCUS_EXTRA_CLASS_OPS \
EFL_OBJECT_OP_FUNC(efl_input_instance_get, _efl_input_focus_efl_input_event_instance_get)
#include "efl_input_focus.eo.c"

View File

@ -82,11 +82,11 @@ _efl_input_hold_efl_object_destructor(Eo *obj, Efl_Input_Hold_Data *pd)
efl_destructor(efl_super(obj, MY_CLASS));
}
EOLIAN static Efl_Input_Event *
_efl_input_hold_efl_input_event_instance_get(Eo *klass, void *_pd EINA_UNUSED,
Efl_Object *owner, void **priv)
EOAPI Eo*
efl_input_hold_instance_get(Efl_Object *owner, void **priv)
{
Efl_Input_Event *evt = efl_input_event_instance_get(klass, owner);;
Efl_Input_Event *evt = efl_input_event_instance_get(EFL_INPUT_HOLD_CLASS, owner);;
if (!evt) return NULL;
if (priv) *priv = efl_data_scope_get(evt, MY_CLASS);
@ -139,7 +139,4 @@ _efl_input_hold_efl_input_event_legacy_info_get(Eo *obj, Efl_Input_Hold_Data *pd
#define EFL_INPUT_HOLD_EXTRA_OPS \
EFL_OBJECT_OP_FUNC(efl_input_legacy_info_get, _efl_input_hold_efl_input_event_legacy_info_get)
#define EFL_INPUT_HOLD_EXTRA_CLASS_OPS \
EFL_OBJECT_OP_FUNC(efl_input_instance_get, _efl_input_hold_efl_input_event_instance_get)
#include "efl_input_hold.eo.c"

View File

@ -12,18 +12,17 @@
#define MY_CLASS EFL_INPUT_KEY_CLASS
EOLIAN static Efl_Input_Key *
_efl_input_key_efl_input_event_instance_get(Eo *klass, void *_pd EINA_UNUSED,
Eo *owner, void **priv)
EOAPI Eo*
efl_input_key_instance_get(Efl_Object *owner, void **priv)
{
Efl_Input_Key_Data *ev;
Efl_Input_Key *evt;
Evas *evas;
evt = efl_input_event_instance_get(klass, owner);
evt = efl_input_event_instance_get(EFL_INPUT_KEY_CLASS, owner);
if (!evt) return NULL;
ev = efl_data_scope_get(evt, klass);
ev = efl_data_scope_get(evt, EFL_INPUT_KEY_CLASS);
ev->fake = EINA_FALSE;
if (priv) *priv = ev;
@ -267,7 +266,4 @@ _efl_input_key_efl_input_event_legacy_info_get(Eo *obj, Efl_Input_Key_Data *pd)
#define EFL_INPUT_KEY_EXTRA_OPS \
EFL_OBJECT_OP_FUNC(efl_input_legacy_info_get, _efl_input_key_efl_input_event_legacy_info_get)
#define EFL_INPUT_KEY_EXTRA_CLASS_OPS \
EFL_OBJECT_OP_FUNC(efl_input_instance_get, _efl_input_key_efl_input_event_instance_get)
#include "efl_input_key.eo.c"

View File

@ -24,17 +24,16 @@
*/
/* internal eo */
static Efl_Input_Pointer *
_efl_input_pointer_efl_input_event_instance_get(Eo *klass, void *_pd EINA_UNUSED,
Eo *owner, void **priv)
EOAPI Eo*
efl_input_pointer_instance_get(Efl_Object *owner, void **priv)
{
Efl_Input_Pointer_Data *ev;
Efl_Input_Pointer *evt;
evt = efl_input_event_instance_get(klass, owner);
evt = efl_input_event_instance_get(EFL_INPUT_POINTER_CLASS, owner);
if (!evt) return NULL;
ev = efl_data_scope_get(evt, klass);
ev = efl_data_scope_get(evt, EFL_INPUT_POINTER_CLASS);
ev->fake = EINA_FALSE;
if (priv) *priv = ev;
@ -623,7 +622,4 @@ _efl_input_pointer_efl_input_event_legacy_info_get(Eo *obj, Efl_Input_Pointer_Da
#define EFL_INPUT_POINTER_EXTRA_OPS \
EFL_OBJECT_OP_FUNC(efl_input_legacy_info_get, _efl_input_pointer_efl_input_event_legacy_info_get)
#define EFL_INPUT_POINTER_EXTRA_CLASS_OPS \
EFL_OBJECT_OP_FUNC(efl_input_instance_get, _efl_input_pointer_efl_input_event_instance_get)
#include "efl_input_pointer.eo.c"

View File

@ -1843,7 +1843,7 @@ _canvas_event_feed_mouse_updown(Eo *eo_e, int b, Evas_Button_Flags flags,
if (!e) return;
EVAS_EVENT_FEED_SAFETY_CHECK(e);
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, eo_e, (void **) &ev);
evt = efl_input_pointer_instance_get( eo_e, (void **) &ev);
if (!ev) return;
ev->data = (void *) data;
@ -1957,7 +1957,7 @@ evas_event_feed_mouse_cancel(Eo *eo_e, unsigned int timestamp, const void *data)
Efl_Input_Pointer_Data *ev = NULL;
Efl_Input_Pointer *evt;
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, eo_e, (void **) &ev);
evt = efl_input_pointer_instance_get( eo_e, (void **) &ev);
if (!ev) return;
EVAS_EVENT_FEED_SAFETY_CHECK(e);
@ -2048,7 +2048,7 @@ evas_event_feed_mouse_wheel(Eo *eo_e, int direction, int z, unsigned int timesta
{
EINA_SAFETY_ON_FALSE_RETURN(efl_isa(eo_e, EVAS_CANVAS_CLASS));
Efl_Input_Pointer_Data *ev = NULL;
Efl_Input_Pointer *evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, eo_e, (void **) &ev);
Efl_Input_Pointer *evt = efl_input_pointer_instance_get( eo_e, (void **) &ev);
if (!ev) return;
@ -2489,7 +2489,7 @@ _canvas_event_feed_mouse_move_legacy(Evas *eo_e, Evas_Public_Data *e, int x, int
Efl_Input_Pointer_Data *ev = NULL;
Efl_Input_Pointer *evt;
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, eo_e, (void **) &ev);
evt = efl_input_pointer_instance_get( eo_e, (void **) &ev);
if (!ev) return;
ev->data = (void *) data;
@ -2716,7 +2716,7 @@ _canvas_event_feed_mouse_inout_legacy(Eo *eo_e, unsigned int timestamp,
Efl_Input_Pointer_Data *ev = NULL;
Efl_Input_Pointer *evt;
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, eo_e, (void **) &ev);
evt = efl_input_pointer_instance_get( eo_e, (void **) &ev);
if (!ev) return;
ev->timestamp = timestamp;
@ -2938,7 +2938,7 @@ _canvas_event_feed_multi_internal(Evas *eo_e, Evas_Public_Data *e,
Efl_Input_Pointer_Data *ev = NULL;
Efl_Input_Pointer *evt;
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, eo_e, (void **) &ev);
evt = efl_input_pointer_instance_get( eo_e, (void **) &ev);
if (!e || !ev) return;
EVAS_EVENT_FEED_SAFETY_CHECK(e);
@ -3417,7 +3417,7 @@ _canvas_event_feed_key_legacy(Eo *eo_e, Evas_Public_Data *e,
if (!keyname) return;
evt = efl_input_instance_get(EFL_INPUT_KEY_CLASS, eo_e, (void **) &ev);
evt = efl_input_key_instance_get( eo_e, (void **) &ev);
if (!ev) return;
ev->keyname = (char *) keyname;
@ -3491,7 +3491,7 @@ evas_event_feed_hold(Eo *eo_e, int hold, unsigned int timestamp, const void *dat
event_id = _evas_object_event_new();
evt = efl_input_instance_get(EFL_INPUT_HOLD_CLASS, eo_e, (void **) &ev);
evt = efl_input_hold_instance_get(eo_e, (void **) &ev);
if (!ev) return;
ev->hold = !!hold;
@ -3590,7 +3590,7 @@ evas_event_feed_axis_update(Evas *eo_e, unsigned int timestamp, int device, int
if (!e) return;
EVAS_EVENT_FEED_SAFETY_CHECK(e);
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, eo_e, (void **) &ev);
evt = efl_input_pointer_instance_get( eo_e, (void **) &ev);
if (!ev) return;
ev->data = (void *) data;
@ -4203,7 +4203,7 @@ _evas_canvas_event_pointer_move_event_dispatch(Evas_Public_Data *edata,
Efl_Input_Pointer_Data *ev = NULL;
Efl_Input_Pointer *evt;
evt = efl_input_instance_get(EFL_INPUT_POINTER_CLASS, edata->evas,
evt = efl_input_pointer_instance_get( edata->evas,
(void **) &ev);
if (!evt) return;

View File

@ -107,7 +107,7 @@ _evas_focus_dispatch_event(Evas_Object_Protected_Data *obj, Efl_Input_Device *se
const Efl_Event_Description *efl_object_focus_event;
EVAS_OBJECT_DATA_VALID_CHECK(obj);
evt = efl_input_instance_get(EFL_INPUT_FOCUS_CLASS,
evt = efl_input_focus_instance_get(
efl_provider_find(obj->object, EVAS_CANVAS_CLASS),
(void **) &ev_data);
if (!evt) return;

View File

@ -760,7 +760,7 @@ _evas_canvas_focus_inout_dispatch(Eo *eo_e, Efl_Input_Device *seat,
Efl_Input_Focus_Data *ev_data;
Efl_Input_Focus *evt;
evt = efl_input_instance_get(EFL_INPUT_FOCUS_CLASS, eo_e, (void **) &ev_data);
evt = efl_input_focus_instance_get(eo_e, (void **) &ev_data);
if (!evt) return;
ev_data->device = efl_ref(seat);

View File

@ -1867,7 +1867,7 @@ void _evas_device_cleanup(Evas *e);
Evas_Device *_evas_device_top_get(const Evas *e);
/* legacy/eo events */
Efl_Input_Event *efl_input_event_instance_get(Eo *klass, Eo *owner);
Efl_Input_Event *efl_input_event_instance_get(const Eo *klass, Eo *owner);
void efl_input_event_instance_clean(Eo *klass);
void *efl_input_pointer_legacy_info_fill(Evas *eo_evas, Efl_Input_Key *eo_ev, Evas_Callback_Type type, Evas_Event_Flags **pflags);