summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/edje/edje_entry.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/lib/edje/edje_entry.c b/src/lib/edje/edje_entry.c
index a2abfcb366..ca3aace784 100644
--- a/src/lib/edje/edje_entry.c
+++ b/src/lib/edje/edje_entry.c
@@ -2002,8 +2002,8 @@ _edje_key_down_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
_edje_emit(ed, "entry,key,backspace", rp->part->name);
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
}
- else if (!strcmp(ev->key, "Delete") ||
- (!strcmp(ev->key, "KP_Delete") && !ev->string))
+ else if ((!strcmp(ev->key, "Delete") ||
+ (!strcmp(ev->key, "KP_Delete") && !ev->string)) && (!shift))
{
_compose_seq_reset(en);
if (control)
@@ -2131,6 +2131,13 @@ _edje_key_down_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
_edje_emit(ed, "entry,cut,notify", rp->part->name);
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
}
+ else if ((!strcmp(ev->key, "Delete") ||
+ (!strcmp(ev->key, "KP_Delete") && !ev->string)) && (shift))
+ {
+ _compose_seq_reset(en);
+ _edje_emit(ed, "entry,cut,notify", rp->part->name);
+ ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
+ }
#if defined(__APPLE__) && defined(__MACH__)
else if ((super) && (!strcmp(ev->key, "z")))
#else