summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/PYPBopomofoEngine.cc3
-rw-r--r--src/PYPPinyinEngine.cc3
2 files changed, 4 insertions, 2 deletions
diff --git a/src/PYPBopomofoEngine.cc b/src/PYPBopomofoEngine.cc
index 9838130..99cc86c 100644
--- a/src/PYPBopomofoEngine.cc
+++ b/src/PYPBopomofoEngine.cc
@@ -192,7 +192,8 @@ BopomofoEngine::processKeyEvent (guint keyval, guint keycode, guint modifiers)
keyval == IBUS_grave)){
/* if BopomofoEditor is empty and get a grave key,
* switch current editor to PunctEditor */
- m_input_mode = MODE_PUNCT;
+ if (m_props.modeFullPunct ())
+ m_input_mode = MODE_PUNCT;
}
retval = m_editors[m_input_mode]->processKeyEvent (keyval, keycode, modifiers);
diff --git a/src/PYPPinyinEngine.cc b/src/PYPPinyinEngine.cc
index 8c241d5..8913a53 100644
--- a/src/PYPPinyinEngine.cc
+++ b/src/PYPPinyinEngine.cc
@@ -278,7 +278,8 @@ PinyinEngine::processKeyEvent (guint keyval, guint keycode, guint modifiers)
if (text.empty ()) {
switch (keyval) {
case IBUS_grave:
- m_input_mode = MODE_PUNCT;
+ if (m_props.modeFullPunct ())
+ m_input_mode = MODE_PUNCT;
break;
#ifdef IBUS_BUILD_LUA_EXTENSION
case IBUS_i: