diff --git a/scim-wnn/src/scim_wnn_imengine.cpp b/scim-wnn/src/scim_wnn_imengine.cpp index fab3409..c7280fd 100644 --- a/scim-wnn/src/scim_wnn_imengine.cpp +++ b/scim-wnn/src/scim_wnn_imengine.cpp @@ -323,6 +323,7 @@ it = find(m_proplist.begin(),m_proplist.end(),SCIM_PROP_WNN_MODESTATUS); if (it != m_proplist.end()) { if (m_conversion) it->set_label(_("Kanji")); + else if (m_yosoku) it->set_label(_("Yosoku")); else it->set_label(m_preeditor->getModeName()); } update_property(*it); @@ -625,6 +626,7 @@ update_preedit_string(m_convList.kouho.at(m_convList.pos)); update_preedit_caret(m_convList.kouho.at(m_convList.pos).length()); show_preedit_string(); + updateProperty(); return(true); } @@ -633,6 +635,7 @@ if (m_convList.pos >= m_convList.count) m_convList.pos = 0; else if (m_convList.pos < 0) m_convList.pos = m_convList.count - 1; select_candidate((unsigned int)m_convList.pos); + updateProperty(); return(true); } else if (k_cancel.comp(key) || k_backspace.comp(key)) { @@ -669,6 +672,12 @@ } else { update_preedit_string(m_convList.kouho.at(m_convList.pos)); update_preedit_caret(m_convList.kouho.at(m_convList.pos).length()); + if (!m_yosoku) { + // �ޥ��������򤷤�����ͽ¬����⡼�ɤ������� + m_yosoku = true; + show_preedit_string(); + updateProperty(); + } } m_lookup_table.set_cursor_pos(m_convList.pos); update_lookup_table(m_lookup_table);