summaryrefslogtreecommitdiffstats
path: root/src/ZYZZhuyinEditor.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/ZYZZhuyinEditor.cc')
-rw-r--r--src/ZYZZhuyinEditor.cc15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/ZYZZhuyinEditor.cc b/src/ZYZZhuyinEditor.cc
index 26fc028..a0f004c 100644
--- a/src/ZYZZhuyinEditor.cc
+++ b/src/ZYZZhuyinEditor.cc
@@ -87,6 +87,21 @@ ZhuyinEditor::updateZhuyin (void)
(instance, section.c_str ());
zhuyin_guess_sentence (instance);
+ /* check whether the last character is space,
+ if not part of parsed chewing input,
+ turn the space into symbol. */
+ if (end_pos == m_text.size () &&
+ ' ' == section[section.size () - 1] &&
+ section.size () > len) {
+ size_t length = get_enhanced_text_length (m_text);
+ erase_input_sequence (m_text, length - 1, 1);
+ insert_symbol (m_text, length - 1, BUILTIN_SYMBOL_TYPE,
+ "", " ");
+ /* as we changed the last space character,
+ reached the end of user input, exit the loop. */
+ break;
+ }
+
++index;
}