diff options
-rw-r--r-- | src/PYPCloudCandidates.cc | 4 | ||||
-rw-r--r-- | src/PYPEmojiCandidates.cc | 4 | ||||
-rw-r--r-- | src/PYPEnglishCandidates.cc | 4 | ||||
-rw-r--r-- | src/PYPLibPinyinCandidates.cc | 3 | ||||
-rw-r--r-- | src/PYPLuaTriggerCandidates.cc | 4 |
5 files changed, 14 insertions, 5 deletions
diff --git a/src/PYPCloudCandidates.cc b/src/PYPCloudCandidates.cc index 901e431..871b87a 100644 --- a/src/PYPCloudCandidates.cc +++ b/src/PYPCloudCandidates.cc @@ -410,7 +410,9 @@ CloudCandidates::processCandidates (std::vector<EnhancedCandidate> & candidates) /* search the first non-ngram candidate position */ for (pos = candidates.begin (); pos != candidates.end (); ++pos) { - if (CANDIDATE_NBEST_MATCH != pos->m_candidate_type) + if (CANDIDATE_NBEST_MATCH != pos->m_candidate_type && + CANDIDATE_LONGER != pos->m_candidate_type && + CANDIDATE_LONGER_USER != pos->m_candidate_type) break; m_candidate_cache.insert (pos->m_display_string); } diff --git a/src/PYPEmojiCandidates.cc b/src/PYPEmojiCandidates.cc index 6587e59..d424a77 100644 --- a/src/PYPEmojiCandidates.cc +++ b/src/PYPEmojiCandidates.cc @@ -71,7 +71,9 @@ EmojiCandidates::processCandidates (std::vector<EnhancedCandidate> & candidates) std::vector<EnhancedCandidate>::iterator pos; for (pos = candidates.begin (); pos != candidates.end (); ++pos) { - if (CANDIDATE_NBEST_MATCH != pos->m_candidate_type) + if (CANDIDATE_NBEST_MATCH != pos->m_candidate_type && + CANDIDATE_LONGER != pos->m_candidate_type && + CANDIDATE_LONGER_USER != pos->m_candidate_type) break; } diff --git a/src/PYPEnglishCandidates.cc b/src/PYPEnglishCandidates.cc index a914fed..0da60a9 100644 --- a/src/PYPEnglishCandidates.cc +++ b/src/PYPEnglishCandidates.cc @@ -51,7 +51,9 @@ EnglishCandidates::processCandidates (std::vector<EnhancedCandidate> & candidate std::vector<EnhancedCandidate>::iterator pos; for (pos = candidates.begin (); pos != candidates.end (); ++pos) { - if (CANDIDATE_NBEST_MATCH != pos->m_candidate_type) + if (CANDIDATE_NBEST_MATCH != pos->m_candidate_type && + CANDIDATE_LONGER != pos->m_candidate_type && + CANDIDATE_LONGER_USER != pos->m_candidate_type) break; } diff --git a/src/PYPLibPinyinCandidates.cc b/src/PYPLibPinyinCandidates.cc index 3c9fe71..6fdfb49 100644 --- a/src/PYPLibPinyinCandidates.cc +++ b/src/PYPLibPinyinCandidates.cc @@ -125,7 +125,8 @@ LibPinyinCandidates::selectCandidate (EnhancedCandidate & enhanced) return SELECT_CANDIDATE_COMMIT; } - if (CANDIDATE_LONGER == enhanced.m_candidate_type) { + if (CANDIDATE_LONGER == enhanced.m_candidate_type || + CANDIDATE_LONGER_USER == enhanced.m_candidate_type) { /* because longer candidate starts from the beginning of user input. */ pinyin_choose_candidate (instance, 0, candidate); diff --git a/src/PYPLuaTriggerCandidates.cc b/src/PYPLuaTriggerCandidates.cc index da866d8..f57314c 100644 --- a/src/PYPLuaTriggerCandidates.cc +++ b/src/PYPLuaTriggerCandidates.cc @@ -50,7 +50,9 @@ LuaTriggerCandidates::processCandidates (std::vector<EnhancedCandidate> & candid std::vector<EnhancedCandidate>::iterator pos; for (pos = candidates.begin (); pos != candidates.end (); ++pos) { - if (CANDIDATE_NBEST_MATCH != pos->m_candidate_type) + if (CANDIDATE_NBEST_MATCH != pos->m_candidate_type && + CANDIDATE_LONGER != pos->m_candidate_type && + CANDIDATE_LONGER_USER != pos->m_candidate_type) break; } |