diff --git a/honoka/src/honoka_def.h b/honoka/src/honoka_def.h index 83de1f7..6d75579 100644 --- a/honoka/src/honoka_def.h +++ b/honoka/src/honoka_def.h @@ -118,5 +118,4 @@ #define HONOKA_PROP_CONVERTOR "/IMEngine/Honoka/Convertor" #define HONOKA_PROP_PREDICTOR "/IMEngine/Honoka/Predictor" - #endif diff --git a/honoka/src/honoka_imengine.cpp b/honoka/src/honoka_imengine.cpp index 0174aab..361520c 100644 --- a/honoka/src/honoka_imengine.cpp +++ b/honoka/src/honoka_imengine.cpp @@ -726,6 +726,28 @@ bool HonokaInstance::process_preedit_key_event(const KeyEvent &key) { // PreEdit���Υ������٥�ȡ� + for(unsigned int i = 0;i < k_preeditor.size();i ++) { + if (k_preeditor[i].comp(key) && (preeditors[i] != m_preeditor)) { + changePreEditor(preeditors[i]->getName()); + updatePreEditor(); + return true; + } + } + for(unsigned int i = 0;i < k_convertor.size();i ++) { + if (k_convertor[i].comp(key) && (convertors[i] != m_convertor)) { + changeConvertor(convertors[i]->getName()); + updatePreEditor(); + return true; + } + } + for(unsigned int i = 0;i < k_predictor.size();i ++) { + if (k_predictor[i].comp(key) && (predictors[i] != m_predictor)) { + m_predictor = predictors[i]; + updatePreEditor(); + return true; + } + } + // PreEditor�Υ������٥�ȥեå��� if (m_preeditor->keyEventHook(key)) { updatePreEditor();