forked from enlightenment/efl
focus: Added internal widget APIs of focus highlight object of elm window.
Summary: This is required to support the animation of focus highlight object in case of item looping (genlist/gengrid/list). Reviewers: seoz, woohyun, raster Reviewed By: raster Subscribers: anand.km, seoz Differential Revision: https://phab.enlightenment.org/D1136
This commit is contained in:
parent
76e3372531
commit
d6f308d1d6
|
@ -161,6 +161,37 @@ _elm_widget_focus_highlight_start(const Evas_Object *obj)
|
|||
_elm_win_focus_highlight_start(top);
|
||||
}
|
||||
|
||||
void
|
||||
_elm_widget_focus_highlight_signal_emit(Evas_Object *obj, const char *emission, const char *source)
|
||||
{
|
||||
Evas_Object *top = elm_widget_top_get(obj);
|
||||
|
||||
if (top && eo_isa(top, ELM_WIN_CLASS))
|
||||
_elm_win_focus_highlight_signal_emit(top, emission, source);
|
||||
}
|
||||
|
||||
void
|
||||
_elm_widget_focus_highlight_signal_callback_add(Evas_Object *obj, const char *emission,
|
||||
const char *source, Edje_Signal_Cb _focus_highlight_signal_cb,
|
||||
void *data)
|
||||
{
|
||||
Evas_Object *top = elm_widget_top_get(obj);
|
||||
|
||||
if (top && eo_isa(top, ELM_WIN_CLASS))
|
||||
_elm_win_focus_highlight_signal_callback_add(top, emission, source, _focus_highlight_signal_cb, data);
|
||||
}
|
||||
|
||||
void
|
||||
_elm_widget_focus_highlight_signal_callback_del(Evas_Object *obj, const char *emission,
|
||||
const char *source,
|
||||
Edje_Signal_Cb _focus_highlight_signal_cb)
|
||||
{
|
||||
Evas_Object *top = elm_widget_top_get(obj);
|
||||
|
||||
if (top && eo_isa(top, ELM_WIN_CLASS))
|
||||
_elm_win_focus_highlight_signal_callback_del(obj, emission, source, _focus_highlight_signal_cb);
|
||||
}
|
||||
|
||||
EAPI Eina_Bool
|
||||
elm_widget_focus_highlight_enabled_get(const Evas_Object *obj)
|
||||
{
|
||||
|
|
|
@ -524,6 +524,13 @@ void _elm_widget_focus_highlight_start(const Evas_Object *obj);
|
|||
void _elm_widget_highlight_in_theme_update(Eo *obj);
|
||||
void _elm_win_focus_highlight_start(Evas_Object *obj);
|
||||
void _elm_win_focus_highlight_in_theme_update(Evas_Object *obj, Eina_Bool in_theme);
|
||||
void _elm_widget_focus_highlight_signal_emit(Evas_Object *obj, const char *emission, const char *source);
|
||||
void _elm_win_focus_highlight_signal_emit(Evas_Object *obj, const char *emission, const char *source);
|
||||
void _elm_widget_focus_highlight_signal_callback_add(Evas_Object *obj, const char *emission, const char *source, Edje_Signal_Cb _focus_highlight_signal_cb, void *data);
|
||||
void _elm_win_focus_highlight_signal_callback_add(Evas_Object *obj, const char *emission, const char *source, Edje_Signal_Cb _focus_highlight_signal_cb, void *data);
|
||||
void _elm_widget_focus_highlight_signal_callback_del(Evas_Object *obj, const char *emission, const char *source, Edje_Signal_Cb _focus_highlight_signal_cb);
|
||||
void _elm_widget_focus_highlight_signal_callback_del(Evas_Object *obj, const char *emission, const char *source, Edje_Signal_Cb _focus_highlight_signal_cb);
|
||||
void _elm_win_focus_highlight_signal_callback_del(Evas_Object *obj, const char *emission, const char *source, Edje_Signal_Cb _focus_highlight_signal_cb);
|
||||
|
||||
EAPI void _elm_access_clear(Elm_Access_Info *ac);
|
||||
EAPI void _elm_access_text_set(Elm_Access_Info *ac, int type, const char *text);
|
||||
|
|
|
@ -4831,6 +4831,33 @@ _elm_win_focus_highlight_in_theme_update(Evas_Object *obj, Eina_Bool in_theme)
|
|||
sd->focus_highlight.cur.in_theme = !!in_theme;
|
||||
}
|
||||
|
||||
void
|
||||
_elm_win_focus_highlight_signal_emit(Evas_Object *obj, const char *emission, const char *source)
|
||||
{
|
||||
ELM_WIN_DATA_GET(obj, sd);
|
||||
if (sd->focus_highlight.enabled)
|
||||
edje_object_signal_emit(sd->focus_highlight.fobj, emission, source);
|
||||
}
|
||||
|
||||
void
|
||||
_elm_win_focus_highlight_signal_callback_add(Evas_Object *obj, const char *emission,
|
||||
const char *source, Edje_Signal_Cb _focus_highlight_signal_cb,
|
||||
void *data)
|
||||
{
|
||||
ELM_WIN_DATA_GET(obj, sd);
|
||||
if (sd->focus_highlight.enabled && sd->focus_highlight.fobj)
|
||||
edje_object_signal_callback_add(sd->focus_highlight.fobj, emission, source, _focus_highlight_signal_cb, data);
|
||||
}
|
||||
|
||||
void
|
||||
_elm_win_focus_highlight_signal_callback_del(Evas_Object *obj, const char *emission,
|
||||
const char *source, Edje_Signal_Cb _focus_highlight_signal_cb)
|
||||
{
|
||||
ELM_WIN_DATA_GET(obj, sd);
|
||||
if (sd->focus_highlight.enabled && sd->focus_highlight.fobj)
|
||||
edje_object_signal_callback_del(sd->focus_highlight.fobj, emission, source, _focus_highlight_signal_cb);
|
||||
}
|
||||
|
||||
void
|
||||
_elm_win_focus_highlight_start(Evas_Object *obj)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue