forked from enlightenment/efl
win: set NULL to focus_highlight.prev.target when it's deleted.
This commit is contained in:
parent
ccc06de678
commit
3aa0cb8edf
|
@ -805,6 +805,16 @@ _elm_win_focus_highlight_simple_setup(Elm_Win_Data *sd,
|
||||||
edje_object_signal_emit(obj, "elm,state,anim,stop", "elm");
|
edje_object_signal_emit(obj, "elm,state,anim,stop", "elm");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_elm_win_focus_prev_target_del(void *data,
|
||||||
|
Evas *e EINA_UNUSED,
|
||||||
|
Evas_Object *obj EINA_UNUSED,
|
||||||
|
void *event_info EINA_UNUSED)
|
||||||
|
{
|
||||||
|
ELM_WIN_DATA_GET(data, sd);
|
||||||
|
sd->focus_highlight.prev.target = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_elm_win_focus_highlight_reconfigure_job(void *data)
|
_elm_win_focus_highlight_reconfigure_job(void *data)
|
||||||
{
|
{
|
||||||
|
@ -829,8 +839,12 @@ _elm_win_focus_highlight_reconfigure_job(void *data)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if ((previous) && (sd->focus_highlight.prev.in_theme))
|
if ((previous) && (sd->focus_highlight.prev.in_theme))
|
||||||
elm_widget_signal_emit
|
{
|
||||||
(previous, "elm,action,focus_highlight,hide", "elm");
|
evas_object_event_callback_del_full
|
||||||
|
(previous, EVAS_CALLBACK_DEL, _elm_win_focus_prev_target_del, data);
|
||||||
|
elm_widget_signal_emit
|
||||||
|
(previous, "elm,action,focus_highlight,hide", "elm");
|
||||||
|
}
|
||||||
|
|
||||||
if (!target)
|
if (!target)
|
||||||
common_visible = EINA_FALSE;
|
common_visible = EINA_FALSE;
|
||||||
|
@ -891,6 +905,9 @@ the_end:
|
||||||
_elm_win_focus_highlight_visible_set(sd, common_visible);
|
_elm_win_focus_highlight_visible_set(sd, common_visible);
|
||||||
sd->focus_highlight.geometry_changed = EINA_FALSE;
|
sd->focus_highlight.geometry_changed = EINA_FALSE;
|
||||||
sd->focus_highlight.prev = sd->focus_highlight.cur;
|
sd->focus_highlight.prev = sd->focus_highlight.cur;
|
||||||
|
evas_object_event_callback_add
|
||||||
|
(sd->focus_highlight.prev.target,
|
||||||
|
EVAS_CALLBACK_DEL, _elm_win_focus_prev_target_del, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
Loading…
Reference in New Issue