{
size_t start, end;
char *tmp;
- Edje_Entry_Change_Info *info = calloc(1, sizeof(*info));
- info->insert = EINA_FALSE;
+ Edje_Entry_Change_Info *info;
+
start = evas_textblock_cursor_pos_get(en->sel_start);
end = evas_textblock_cursor_pos_get(en->sel_end);
+ if (start == end)
+ goto noop;
+
+ info = calloc(1, sizeof(*info));
+ info->insert = EINA_FALSE;
info->change.del.start = start;
info->change.del.end = end;
_edje_emit(ed, "entry,changed", en->rp->part->name);
_edje_emit_full(ed, "entry,changed,user", en->rp->part->name, info,
_free_entry_change_info);
+noop:
_sel_clear(en->cursor, en->rp->object, en);
}