forked from enlightenment/terminology
win: fix focus display when focusing in/out and grouped input
This commit is contained in:
parent
b5668d1791
commit
0d5a796703
|
@ -284,6 +284,11 @@ static void
|
|||
_focus_validator(void)
|
||||
{}
|
||||
#endif
|
||||
|
||||
#define GROUPED_INPUT_TERM_FOREACH(_wn, _list, _term) \
|
||||
EINA_LIST_FOREACH(_wn->terms, _list, _term) \
|
||||
if (!_wn->group_only_visible || term_is_visible(_term))
|
||||
|
||||
/* }}} */
|
||||
/* {{{ Scale */
|
||||
static void
|
||||
|
@ -911,7 +916,19 @@ _cb_win_focus_in(void *data,
|
|||
|
||||
term = tc->focused_term_get(tc);
|
||||
|
||||
if ( wn->config->mouse_over_focus )
|
||||
if (wn->group_input)
|
||||
{
|
||||
Eina_List *l;
|
||||
Term *t;
|
||||
|
||||
GROUPED_INPUT_TERM_FOREACH(wn, l, t)
|
||||
{
|
||||
elm_layout_signal_emit(t->bg, "focus,in", "terminology");
|
||||
termio_event_feed_mouse_in(t->termio);
|
||||
termio_focus_in(t->termio);
|
||||
}
|
||||
}
|
||||
else if ( wn->config->mouse_over_focus )
|
||||
{
|
||||
Term *term_mouse;
|
||||
Evas_Coord mx, my;
|
||||
|
@ -954,6 +971,17 @@ _cb_win_focus_out(void *data,
|
|||
DBG("FOCUS OUT tc:%p tc->is_focused:%d",
|
||||
tc, tc->is_focused);
|
||||
tc->unfocus(tc, NULL);
|
||||
if (wn->group_input)
|
||||
{
|
||||
Eina_List *l;
|
||||
Term *term;
|
||||
|
||||
GROUPED_INPUT_TERM_FOREACH(wn, l, term)
|
||||
{
|
||||
elm_layout_signal_emit(term->bg, "focus,out", "terminology");
|
||||
termio_focus_out(term->termio);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
|
@ -1600,11 +1628,6 @@ _cb_win_key_up(void *data,
|
|||
keyin_handle_up(&wn->khdl, ev);
|
||||
}
|
||||
|
||||
#define GROUPED_INPUT_TERM_FOREACH(_wn, _list, _term) \
|
||||
EINA_LIST_FOREACH(_wn->terms, _list, _term) \
|
||||
if (!_wn->group_only_visible || term_is_visible(_term))
|
||||
|
||||
|
||||
const char *
|
||||
term_preedit_str_get(Term *term)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue