From c1dccdd6c19074c21231fcd21c68518b4ebfdc77 Mon Sep 17 00:00:00 2001 From: "Eduardo Lima (Etrunko)" Date: Wed, 2 Oct 2013 12:16:37 -0300 Subject: [PATCH] Fix handling of backspace key press Change-Id: I5f3aca27d1e03636dfcda1d5204abd9c7a4b0ed9 Signed-off-by: Eduardo Lima (Etrunko) --- src/wkb-main.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/wkb-main.c b/src/wkb-main.c index c845ee2..0331c61 100644 --- a/src/wkb-main.c +++ b/src/wkb-main.c @@ -177,7 +177,10 @@ _cb_wkb_on_key_down(void *data, Evas_Object *obj, const char *emission EINA_UNUS else if (strcmp(key, "backspace") == 0) { if (strlen(wkb->preedit_str) == 0) + { wl_input_method_context_delete_surrounding_text(wkb->im_ctx, -1, 1); + wl_input_method_context_commit_string(wkb->im_ctx, wkb->serial, ""); + } else { wkb->preedit_str[strlen(wkb->preedit_str) - 1] = '\0'; @@ -189,7 +192,7 @@ _cb_wkb_on_key_down(void *data, Evas_Object *obj, const char *emission EINA_UNUS else if (strcmp(key, "enter") == 0) { _wkb_commit_preedit_str(wkb); - wl_input_method_context_keysym(wkb->im_ctx, wkb->serial, time, + wl_input_method_context_keysym(wkb->im_ctx, wkb->serial, 0, XKB_KEY_Return, WL_KEYBOARD_KEY_STATE_PRESSED, 0); goto end; -- 2.7.4