text: Add delete_surrounding_text to protocol
Add delete_surrounding_text event in the text_model interface and the
request in the input_method_context interface. Implement it in the
example editor client and in the example keyboard so that the backspace
key works with it.
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
diff --git a/clients/keyboard.c b/clients/keyboard.c
index 4bc7d24..588ef78 100644
--- a/clients/keyboard.c
+++ b/clients/keyboard.c
@@ -222,6 +222,10 @@
strlen(keyboard->keyboard->preedit_string));
break;
case keytype_backspace:
+ if (strlen(keyboard->keyboard->preedit_string) == 0) {
+ input_method_context_delete_surrounding_text(keyboard->keyboard->context,
+ -1, 1);
+ }
break;
case keytype_enter:
break;