diff options
Diffstat (limited to 'native/jni/src/proximity_info_state.cpp')
-rw-r--r-- | native/jni/src/proximity_info_state.cpp | 36 |
1 files changed, 13 insertions, 23 deletions
diff --git a/native/jni/src/proximity_info_state.cpp b/native/jni/src/proximity_info_state.cpp index 00e7ffc6c..fe1c43320 100644 --- a/native/jni/src/proximity_info_state.cpp +++ b/native/jni/src/proximity_info_state.cpp @@ -156,15 +156,14 @@ void ProximityInfoState::initInputParams(const int pointerId, const float maxPoi } } -// TODO: Remove the "scale" parameter // This function basically converts from a length to an edit distance. Accordingly, it's obviously // wrong to compare with mMaxPointToKeyLength. float ProximityInfoState::getPointToKeyLength( - const int inputIndex, const int codePoint, const float scale) const { + const int inputIndex, const int codePoint) const { const int keyId = mProximityInfo->getKeyIndexOf(codePoint); if (keyId != NOT_AN_INDEX) { const int index = inputIndex * mProximityInfo->getKeyCount() + keyId; - return min(mSampledDistanceCache_G[index] * scale, mMaxPointToKeyLength); + return min(mSampledDistanceCache_G[index], mMaxPointToKeyLength); } if (isSkippableCodePoint(codePoint)) { return 0.0f; @@ -173,19 +172,10 @@ float ProximityInfoState::getPointToKeyLength( return static_cast<float>(MAX_VALUE_FOR_WEIGHTING); } -float ProximityInfoState::getPointToKeyLength_G(const int inputIndex, const int codePoint) const { - return getPointToKeyLength(inputIndex, codePoint, 1.0f); -} - -// TODO: Remove the "scale" parameter float ProximityInfoState::getPointToKeyByIdLength( - const int inputIndex, const int keyId, const float scale) const { + const int inputIndex, const int keyId) const { return ProximityInfoStateUtils::getPointToKeyByIdLength(mMaxPointToKeyLength, - &mSampledDistanceCache_G, mProximityInfo->getKeyCount(), inputIndex, keyId, scale); -} - -float ProximityInfoState::getPointToKeyByIdLength(const int inputIndex, const int keyId) const { - return getPointToKeyByIdLength(inputIndex, keyId, 1.0f); + &mSampledDistanceCache_G, mProximityInfo->getKeyCount(), inputIndex, keyId); } // In the following function, c is the current character of the dictionary word currently examined. @@ -207,15 +197,15 @@ ProximityType ProximityInfoState::getProximityType(const int index, const int co // The first char in the array is what user typed. If it matches right away, that means the // user typed that same char for this pos. if (firstCodePoint == baseLowerC || firstCodePoint == codePoint) { - return EQUIVALENT_CHAR; + return MATCH_CHAR; } - if (!checkProximityChars) return UNRELATED_CHAR; + if (!checkProximityChars) return SUBSTITUTION_CHAR; // If the non-accented, lowercased version of that first character matches c, then we have a // non-accented version of the accented character the user typed. Treat it as a close char. if (toBaseLowerCase(firstCodePoint) == baseLowerC) { - return NEAR_PROXIMITY_CHAR; + return PROXIMITY_CHAR; } // Not an exact nor an accent-alike match: search the list of close keys @@ -228,7 +218,7 @@ ProximityType ProximityInfoState::getProximityType(const int index, const int co if (proximityIndex) { *proximityIndex = j; } - return NEAR_PROXIMITY_CHAR; + return PROXIMITY_CHAR; } ++j; } @@ -248,23 +238,23 @@ ProximityType ProximityInfoState::getProximityType(const int index, const int co ++j; } } - // Was not included, signal this as an unrelated character. - return UNRELATED_CHAR; + // Was not included, signal this as a substitution character. + return SUBSTITUTION_CHAR; } ProximityType ProximityInfoState::getProximityTypeG(const int index, const int codePoint) const { if (!isUsed()) { - return UNRELATED_NOR_SUBSTITUTION_CHAR; + return UNRELATED_CHAR; } const int lowerCodePoint = toLowerCase(codePoint); const int baseLowerCodePoint = toBaseCodePoint(lowerCodePoint); for (int i = 0; i < static_cast<int>(mSampledSearchKeyVectors[index].size()); ++i) { if (mSampledSearchKeyVectors[index][i] == lowerCodePoint || mSampledSearchKeyVectors[index][i] == baseLowerCodePoint) { - return EQUIVALENT_CHAR; + return MATCH_CHAR; } } - return UNRELATED_NOR_SUBSTITUTION_CHAR; + return UNRELATED_CHAR; } bool ProximityInfoState::isKeyInSerchKeysAfterIndex(const int index, const int keyId) const { |