I feel it would be better to confirm the pre-edit at this point, then send the backspace to the application.

On 09/17/2012 06:28 AM, Jan Arne Petersen wrote:
From: Jan Arne Petersen <[email protected]>

When there is a pre-edit text delete the last character of the pre-edit
text with the backspace key.
---
  clients/keyboard.c | 5 +++++
  1 file changed, 5 insertions(+)

diff --git a/clients/keyboard.c b/clients/keyboard.c
index bf0e9f0..8820a22 100644
--- a/clients/keyboard.c
+++ b/clients/keyboard.c
@@ -233,6 +233,11 @@ keyboard_handle_key(struct keyboard *keyboard, const 
struct key *key)
                        if (strlen(keyboard->keyboard->preedit_string) == 0) {
                                
input_method_context_delete_surrounding_text(keyboard->keyboard->context,
                                                                             
-1, 1);
+                       } else {
+                               
keyboard->keyboard->preedit_string[strlen(keyboard->keyboard->preedit_string) - 
1] = '\0';
+                               
input_method_context_preedit_string(keyboard->keyboard->context,
+                                                                   
keyboard->keyboard->preedit_string,
+                                                                   
strlen(keyboard->keyboard->preedit_string));
                        }
                        break;
                case keytype_enter:


_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to