diff --git a/scim-wnn/src/scim_wnn_imengine.cpp b/scim-wnn/src/scim_wnn_imengine.cpp index aa54bbe..c1277b1 100644 --- a/scim-wnn/src/scim_wnn_imengine.cpp +++ b/scim-wnn/src/scim_wnn_imengine.cpp @@ -281,6 +281,9 @@ update_preedit_string(wnn.getText(),wnn.getAttributeList()); update_preedit_caret(wnn.getCaretPos()); } + if (alp == -1) { + if (!m_lookup) startLookup(); + } return(true); } else if (k_commit.comp(key)) { @@ -407,9 +410,13 @@ m_convList = wnn.getConversionList(); update_preedit_string(wnn.getText(),wnn.getAttributeList()); update_preedit_caret(wnn.getCaretPos()); - hide_lookup_table(); - hide_aux_string(); - m_lookup = false; + if (alp == -1) { + startLookup(); + } else { + hide_lookup_table(); + hide_aux_string(); + m_lookup = false; + } alp_count = 1; return(true); } else @@ -418,9 +425,13 @@ m_convList = wnn.getConversionList(); update_preedit_string(wnn.getText(),wnn.getAttributeList()); update_preedit_caret(wnn.getCaretPos()); - hide_lookup_table(); - hide_aux_string(); - m_lookup = false; + if (alp == -1) { + startLookup(); + } else { + hide_lookup_table(); + hide_aux_string(); + m_lookup = false; + } alp_count = 1; return(true); } else