forked from enlightenment/efl
elementary: introduce helper functions for the redirects
This commit is contained in:
parent
74b4327746
commit
fb6c37f16f
|
@ -215,15 +215,13 @@ _efl_ui_focus_manager_sub_efl_object_parent_set(Eo *obj, Efl_Ui_Focus_Manager_Su
|
|||
|
||||
old_parent = efl_parent_get(obj);
|
||||
|
||||
efl_event_callback_forwarder_del(obj, EFL_UI_FOCUS_MANAGER_EVENT_PRE_FLUSH, old_parent);
|
||||
efl_event_callback_forwarder_del(obj, EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED, old_parent);
|
||||
_efl_ui_focus_manager_redirect_events_del(obj, old_parent);
|
||||
efl_event_callback_array_del(old_parent, self_manager(), obj);
|
||||
|
||||
efl_parent_set(efl_super(obj, MY_CLASS), parent);
|
||||
|
||||
new_parent = efl_parent_get(obj);
|
||||
efl_event_callback_forwarder_add(obj, EFL_UI_FOCUS_MANAGER_EVENT_PRE_FLUSH, new_parent);
|
||||
efl_event_callback_forwarder_add(obj, EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED, new_parent);
|
||||
_efl_ui_focus_manager_redirect_events_add(obj, new_parent);
|
||||
efl_event_callback_array_add(new_parent, self_manager(), obj);
|
||||
}
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ class Efl.Ui.Focus.Manager.Sub (Efl.Ui.Focus.Manager, Efl.Object)
|
|||
|
||||
This class is only working as composite object to a Efl.Ui.Focus.User and Efl.Ui.Focus.Object.
|
||||
|
||||
The object itself does redirect the managers settings to the object where this object is attached
|
||||
The object itself does redirect the managers events to the object where this object is attached
|
||||
]]
|
||||
methods {
|
||||
}
|
||||
|
|
|
@ -5249,8 +5249,7 @@ _efl_ui_win_efl_object_constructor(Eo *obj, Efl_Ui_Win_Data *pd)
|
|||
|
||||
efl_composite_attach(obj, pd->manager);
|
||||
|
||||
efl_event_callback_forwarder_add(pd->manager, EFL_UI_FOCUS_MANAGER_EVENT_PRE_FLUSH, obj);
|
||||
efl_event_callback_forwarder_add(pd->manager, EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED, obj);
|
||||
_efl_ui_focus_manager_redirect_events_add(pd->manager, obj);
|
||||
return obj;
|
||||
}
|
||||
|
||||
|
|
|
@ -4662,10 +4662,6 @@ _elm_interface_scrollable_efl_object_constructor(Eo *obj, Elm_Scrollable_Smart_I
|
|||
|
||||
efl_composite_attach(obj, pd->manager);
|
||||
|
||||
efl_event_callback_forwarder_add(pd->manager, EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED, obj);
|
||||
efl_event_callback_forwarder_add(pd->manager, EFL_UI_FOCUS_MANAGER_EVENT_PRE_FLUSH , obj);
|
||||
efl_event_callback_forwarder_add(pd->manager, EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY , obj);
|
||||
efl_event_callback_forwarder_add(pd->manager, EFL_UI_FOCUS_MANAGER_EVENT_FOCUSED, obj);
|
||||
efl_event_callback_add(pd->manager, EFL_UI_FOCUS_MANAGER_EVENT_FOCUSED, _focused_element, obj);
|
||||
|
||||
return efl_constructor(efl_super(obj, MY_SCROLLABLE_INTERFACE));
|
||||
|
|
|
@ -31,6 +31,24 @@
|
|||
static Elm_Version _version = { VMAJ, VMIN, VMIC, VREV };
|
||||
EAPI Elm_Version *elm_version = &_version;
|
||||
|
||||
void
|
||||
_efl_ui_focus_manager_redirect_events_del(Efl_Ui_Focus_Manager *manager, Eo *obj)
|
||||
{
|
||||
efl_event_callback_forwarder_del(manager, EFL_UI_FOCUS_MANAGER_EVENT_PRE_FLUSH, obj);
|
||||
efl_event_callback_forwarder_del(manager, EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED, obj);
|
||||
efl_event_callback_forwarder_del(manager, EFL_UI_FOCUS_MANAGER_EVENT_FOCUSED , obj);
|
||||
efl_event_callback_forwarder_del(manager, EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY, obj);
|
||||
}
|
||||
|
||||
void
|
||||
_efl_ui_focus_manager_redirect_events_add(Efl_Ui_Focus_Manager *manager, Eo *obj)
|
||||
{
|
||||
efl_event_callback_forwarder_add(manager, EFL_UI_FOCUS_MANAGER_EVENT_PRE_FLUSH, obj);
|
||||
efl_event_callback_forwarder_add(manager, EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED, obj);
|
||||
efl_event_callback_forwarder_add(manager, EFL_UI_FOCUS_MANAGER_EVENT_FOCUSED , obj);
|
||||
efl_event_callback_forwarder_add(manager, EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY, obj);
|
||||
}
|
||||
|
||||
Eina_Bool
|
||||
_elm_dangerous_call_check(const char *call)
|
||||
{
|
||||
|
|
|
@ -814,6 +814,7 @@ _elm_menu_efl_object_constructor(Eo *obj, Elm_Menu_Data *sd)
|
|||
);
|
||||
|
||||
efl_composite_attach(obj, manager);
|
||||
_efl_ui_focus_manager_redirect_events_add(manager, obj);
|
||||
}
|
||||
|
||||
obj = efl_constructor(efl_super(obj, MY_CLASS));
|
||||
|
|
|
@ -540,6 +540,9 @@ void _elm_menu_menu_bar_hide(Eo *obj);
|
|||
void _elm_win_wl_cursor_set(Evas_Object *obj, const char *cursor);
|
||||
#endif
|
||||
|
||||
void _efl_ui_focus_manager_redirect_events_del(Efl_Ui_Focus_Manager *manager, Eo *obj);
|
||||
void _efl_ui_focus_manager_redirect_events_add(Efl_Ui_Focus_Manager *manager, Eo *obj);
|
||||
|
||||
/* DEPRECATED, will be removed on next release */
|
||||
void _elm_icon_signal_emit(Evas_Object *obj,
|
||||
const char *emission,
|
||||
|
|
Loading…
Reference in New Issue