} Entry_Long_Press_State;
static void _edje_entry_imf_cursor_info_set(Entry *en);
-static void _edje_entry_imf_context_reset(Entry *en);
struct _Entry
{
_sel_extend(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
{
if (!en->sel_end) return;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(en->rp);
_sel_enable(c, o, en);
if (!evas_textblock_cursor_compare(c, en->sel_end)) return;
_sel_preextend(Evas_Textblock_Cursor *c, Evas_Object *o, Entry *en)
{
if (!en->sel_end) return;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(en->rp);
_sel_enable(c, o, en);
if (!evas_textblock_cursor_compare(c, en->sel_start)) return;
if ((!strcmp(ev->key, "Escape")) ||
(!strcmp(ev->key, "Return")) || (!strcmp(ev->key, "KP_Enter")))
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
old_cur_pos = evas_textblock_cursor_pos_get(en->cursor);
}
#endif
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
en->select_mod_start = EINA_FALSE;
en->select_mod_end = EINA_FALSE;
}
#endif
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
tc = evas_object_textblock_cursor_new(rp->object);
evas_textblock_cursor_copy(en->cursor, tc);
}
evas_textblock_cursor_free(tc);
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
_edje_entry_imf_cursor_info_set(en);
_edje_entry_real_part_configure(rp);
{
Entry *en = rp->entry_data;
if (!en) return;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
// set text as markup
_sel_clear(en->cursor, rp->object, en);
evas_object_textblock_text_markup_set(rp->object, text);
{
Entry *en = rp->entry_data;
if (!en) return;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
// prepend markup @ cursor pos
if (en->have_selection)
Entry *en = rp->entry_data;
if (!en) return;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
_sel_clear(en->cursor, rp->object, en);
_curs_start(en->cursor, rp->object, en);
Entry *en = rp->entry_data;
if (!en) return;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
_sel_clear(en->cursor, rp->object, en);
_sel_enable(en->cursor, rp->object, en);
{
Entry *en = rp->entry_data;
if (!en) return;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
_sel_extend(en->cursor, rp->object, en);
_edje_entry_imf_cursor_info_set(en);
{
en->selecting = EINA_FALSE;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
_edje_entry_imf_cursor_info_set(en);
_edje_entry_real_part_configure(rp);
}
Evas_Textblock_Cursor *c = _cursor_get(rp, cur);
if (!c) return EINA_FALSE;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
if (!evas_textblock_cursor_char_next(c))
{
Evas_Textblock_Cursor *c = _cursor_get(rp, cur);
if (!c) return EINA_FALSE;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
if (!evas_textblock_cursor_char_prev(c))
{
int ln;
if (!c) return EINA_FALSE;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
ln = evas_textblock_cursor_line_geometry_get(c, NULL, NULL, NULL, NULL);
ln--;
int ln;
if (!c) return EINA_FALSE;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
ln = evas_textblock_cursor_line_geometry_get(c, NULL, NULL, NULL, NULL);
ln++;
Evas_Textblock_Cursor *c = _cursor_get(rp, cur);
if (!c) return;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
evas_textblock_cursor_paragraph_first(c);
_sel_update(c, rp->object, rp->entry_data);
Evas_Textblock_Cursor *c = _cursor_get(rp, cur);
if (!c) return;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
_curs_end(c, rp->object, rp->entry_data);
_sel_update(c, rp->object, rp->entry_data);
evas_textblock_cursor_copy(c, d);
_sel_update(c, rp->object, rp->entry_data);
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
_edje_entry_imf_cursor_info_set(en);
_edje_emit(rp->edje, "cursor,changed", rp->part->name);
_edje_entry_real_part_configure(rp);
Entry *en = rp->entry_data;
Evas_Textblock_Cursor *c = _cursor_get(rp, cur);
if (!c) return;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
evas_textblock_cursor_line_char_first(c);
_sel_update(c, rp->object, rp->entry_data);
Entry *en = rp->entry_data;
Evas_Textblock_Cursor *c = _cursor_get(rp, cur);
if (!c) return;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
evas_textblock_cursor_line_char_last(c);
_sel_update(c, rp->object, rp->entry_data);
if (evas_textblock_cursor_pos_get(c) == pos)
return;
- _edje_entry_imf_context_reset(en);
+ _edje_entry_imf_context_reset(rp);
evas_textblock_cursor_pos_set(c, pos);
_sel_update(c, rp->object, rp->entry_data);
return EDJE_INPUT_PANEL_LAYOUT_INVALID;
}
-static void
-_edje_entry_imf_context_reset(Entry *en)
+void
+_edje_entry_imf_context_reset(Edje_Real_Part *rp)
{
+ Entry *en = rp->entry_data;
+ if (!en) return;
#ifdef HAVE_ECORE_IMF
if (en->imf_context)
ecore_imf_context_reset(en->imf_context);
-#else
- (void) en;
#endif
}