From 333f5553b0fdd34d7347cd7baaf3d00393138e40 Mon Sep 17 00:00:00 2001 From: Peng Wu Date: Fri, 27 Jun 2014 17:29:31 +0800 Subject: handle enter key --- src/ZYFallbackEditor.cc | 9 +++++++++ src/ZYZPhoneticEditor.cc | 9 ++++++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/ZYFallbackEditor.cc b/src/ZYFallbackEditor.cc index b23985b..1e5d0ba 100644 --- a/src/ZYFallbackEditor.cc +++ b/src/ZYFallbackEditor.cc @@ -153,6 +153,15 @@ FallbackEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers) case IBUS_space: retval = processEnglish (keyval, keycode, modifiers); break; + /* enter */ + case IBUS_Return: + case IBUS_KP_Enter: + { + Text text ("\n"); + commitText (text); + retval = TRUE; + } + break; /* others */ default: break; diff --git a/src/ZYZPhoneticEditor.cc b/src/ZYZPhoneticEditor.cc index dd1231c..a37f337 100644 --- a/src/ZYZPhoneticEditor.cc +++ b/src/ZYZPhoneticEditor.cc @@ -74,14 +74,17 @@ gboolean PhoneticEditor::processEnter (guint keyval, guint keycode, guint modifiers) { - if (!m_text) - return FALSE; - if (IBUS_Return != keyval && IBUS_KP_Enter != keyval) return FALSE; if (cmshm_filter (modifiers) != 0) + return FALSE; + + if (!m_text) { + Text text ("\n"); + commitText (text); return TRUE; + } commit (); return TRUE; -- cgit