diff --git a/scim-wnn/src/scim_wnn_imengine.cpp b/scim-wnn/src/scim_wnn_imengine.cpp index d4bdcde..19d2342 100644 --- a/scim-wnn/src/scim_wnn_imengine.cpp +++ b/scim-wnn/src/scim_wnn_imengine.cpp @@ -275,6 +275,7 @@ return(false); } startConversion(m_rk.getText(true)); + alp_count ++; show_preedit_string(); if (m_conversion) { update_preedit_string(wnn.getText(),wnn.getAttributeList()); @@ -341,7 +342,7 @@ */ bool WnnInstance::process_conversion_key_event(const KeyEvent &key) { - if ((alp < alp_count) && (alp != 0)) { + if ((alp <= alp_count) && (alp != 0)) { if (!m_lookup) startLookup(); } @@ -370,7 +371,7 @@ hide_lookup_table(); hide_aux_string(); m_lookup = false; - alp_count = 0; + alp_count = 1; return(true); } else if (k_cancel.comp(key) || k_backspace.comp(key)) { @@ -409,7 +410,7 @@ hide_lookup_table(); hide_aux_string(); m_lookup = false; - alp_count = 0; + alp_count = 1; return(true); } else if (k_conversion_forward.comp(key) || k_conversion_backward.comp(key)) { @@ -420,7 +421,7 @@ hide_lookup_table(); hide_aux_string(); m_lookup = false; - alp_count = 0; + alp_count = 1; return(true); } else if (isprint(key.code)) { @@ -566,7 +567,7 @@ m_convList = wnn.getConversionList(); m_conversion = true; - alp_count = 0; + alp_count = 1; }