Make digraph lookups case insensitive
Example: Be able to gesture dictionary words that start with an upper-case German umlaut (e.g., Übermensch). Bug: 8493920 Change-Id: I3253bcd236d34c0af60116e5b41e359f2715bf97main
parent
e01e22e1ea
commit
3970352ea9
|
@ -14,6 +14,7 @@
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "char_utils.h"
|
||||||
#include "binary_format.h"
|
#include "binary_format.h"
|
||||||
#include "defines.h"
|
#include "defines.h"
|
||||||
#include "digraph_utils.h"
|
#include "digraph_utils.h"
|
||||||
|
@ -120,10 +121,11 @@ const DigraphUtils::DigraphType DigraphUtils::USED_DIGRAPH_TYPES[] =
|
||||||
/* static */ const DigraphUtils::digraph_t *DigraphUtils::getDigraphForDigraphTypeAndCodePoint(
|
/* static */ const DigraphUtils::digraph_t *DigraphUtils::getDigraphForDigraphTypeAndCodePoint(
|
||||||
const DigraphUtils::DigraphType digraphType, const int compositeGlyphCodePoint) {
|
const DigraphUtils::DigraphType digraphType, const int compositeGlyphCodePoint) {
|
||||||
const DigraphUtils::digraph_t *digraphs = 0;
|
const DigraphUtils::digraph_t *digraphs = 0;
|
||||||
|
const int compositeGlyphLowerCodePoint = toLowerCase(compositeGlyphCodePoint);
|
||||||
const int digraphsSize =
|
const int digraphsSize =
|
||||||
DigraphUtils::getAllDigraphsForDictionaryAndReturnSize(digraphType, &digraphs);
|
DigraphUtils::getAllDigraphsForDictionaryAndReturnSize(digraphType, &digraphs);
|
||||||
for (int i = 0; i < digraphsSize; i++) {
|
for (int i = 0; i < digraphsSize; i++) {
|
||||||
if (digraphs[i].compositeGlyph == compositeGlyphCodePoint) {
|
if (digraphs[i].compositeGlyph == compositeGlyphLowerCodePoint) {
|
||||||
return &digraphs[i];
|
return &digraphs[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue