Use base lower character to get point to key length.
Bug: 9490364 Change-Id: I3755f00ab22f926f087fc917b95a2db7d722fa00main
parent
10b56df486
commit
e639d7346c
|
@ -74,7 +74,8 @@ class TypingWeighting : public Weighting {
|
||||||
// Note: min() required since length can be MAX_POINT_TO_KEY_LENGTH for characters not on
|
// Note: min() required since length can be MAX_POINT_TO_KEY_LENGTH for characters not on
|
||||||
// the keyboard (like accented letters)
|
// the keyboard (like accented letters)
|
||||||
const float normalizedSquaredLength = traverseSession->getProximityInfoState(0)
|
const float normalizedSquaredLength = traverseSession->getProximityInfoState(0)
|
||||||
->getPointToKeyLength(pointIndex, dicNode->getNodeCodePoint());
|
->getPointToKeyLength(pointIndex,
|
||||||
|
CharUtils::toBaseLowerCase(dicNode->getNodeCodePoint()));
|
||||||
const float normalizedDistance = TouchPositionCorrectionUtils::getSweetSpotFactor(
|
const float normalizedDistance = TouchPositionCorrectionUtils::getSweetSpotFactor(
|
||||||
traverseSession->isTouchPositionCorrectionEnabled(), normalizedSquaredLength);
|
traverseSession->isTouchPositionCorrectionEnabled(), normalizedSquaredLength);
|
||||||
const float weightedDistance = ScoringParams::DISTANCE_WEIGHT_LENGTH * normalizedDistance;
|
const float weightedDistance = ScoringParams::DISTANCE_WEIGHT_LENGTH * normalizedDistance;
|
||||||
|
@ -113,10 +114,10 @@ class TypingWeighting : public Weighting {
|
||||||
const int16_t parentPointIndex = parentDicNode->getInputIndex(0);
|
const int16_t parentPointIndex = parentDicNode->getInputIndex(0);
|
||||||
const int prevCodePoint = parentDicNode->getNodeCodePoint();
|
const int prevCodePoint = parentDicNode->getNodeCodePoint();
|
||||||
const float distance1 = traverseSession->getProximityInfoState(0)->getPointToKeyLength(
|
const float distance1 = traverseSession->getProximityInfoState(0)->getPointToKeyLength(
|
||||||
parentPointIndex + 1, prevCodePoint);
|
parentPointIndex + 1, CharUtils::toBaseLowerCase(prevCodePoint));
|
||||||
const int codePoint = dicNode->getNodeCodePoint();
|
const int codePoint = dicNode->getNodeCodePoint();
|
||||||
const float distance2 = traverseSession->getProximityInfoState(0)->getPointToKeyLength(
|
const float distance2 = traverseSession->getProximityInfoState(0)->getPointToKeyLength(
|
||||||
parentPointIndex, codePoint);
|
parentPointIndex, CharUtils::toBaseLowerCase(codePoint));
|
||||||
const float distance = distance1 + distance2;
|
const float distance = distance1 + distance2;
|
||||||
const float weightedLengthDistance =
|
const float weightedLengthDistance =
|
||||||
distance * ScoringParams::DISTANCE_WEIGHT_LENGTH;
|
distance * ScoringParams::DISTANCE_WEIGHT_LENGTH;
|
||||||
|
@ -133,7 +134,7 @@ class TypingWeighting : public Weighting {
|
||||||
const bool existsAdjacentProximityChars = traverseSession->getProximityInfoState(0)
|
const bool existsAdjacentProximityChars = traverseSession->getProximityInfoState(0)
|
||||||
->existsAdjacentProximityChars(insertedPointIndex);
|
->existsAdjacentProximityChars(insertedPointIndex);
|
||||||
const float dist = traverseSession->getProximityInfoState(0)->getPointToKeyLength(
|
const float dist = traverseSession->getProximityInfoState(0)->getPointToKeyLength(
|
||||||
insertedPointIndex + 1, dicNode->getNodeCodePoint());
|
insertedPointIndex + 1, CharUtils::toBaseLowerCase(dicNode->getNodeCodePoint()));
|
||||||
const float weightedDistance = dist * ScoringParams::DISTANCE_WEIGHT_LENGTH;
|
const float weightedDistance = dist * ScoringParams::DISTANCE_WEIGHT_LENGTH;
|
||||||
const bool singleChar = dicNode->getNodeCodePointCount() == 1;
|
const bool singleChar = dicNode->getNodeCodePointCount() == 1;
|
||||||
float cost = (singleChar ? ScoringParams::INSERTION_COST_FIRST_CHAR : 0.0f);
|
float cost = (singleChar ? ScoringParams::INSERTION_COST_FIRST_CHAR : 0.0f);
|
||||||
|
|
Loading…
Reference in New Issue