const TextAbstraction::Character& character,
const TextAbstraction::Script& characterScript)
{
- return (IsOneOfEmojiScripts(currentRunScript) &&
- (IsOneOfEmojiScripts(characterScript) ||
- TextAbstraction::IsZeroWidthJoiner(character) ||
- TextAbstraction::IsZeroWidthNonJoiner(character) ||
- TextAbstraction::IsEmojiItem(character) ||
- TextAbstraction::IsMiscellaneousSymbolsAndArrowsEmoji(character) ||
- TextAbstraction::IsDingbatsEmoji(character)));
+ return (!(TextAbstraction::IsNegativeSquaredLatinCapitalLetter(character)) &&
+ (IsOneOfEmojiScripts(currentRunScript) &&
+ (IsOneOfEmojiScripts(characterScript) ||
+ TextAbstraction::IsZeroWidthJoiner(character) ||
+ TextAbstraction::IsZeroWidthNonJoiner(character) ||
+ TextAbstraction::IsEmojiItem(character) ||
+ TextAbstraction::IsMiscellaneousSymbolsAndArrowsEmoji(character) ||
+ TextAbstraction::IsDingbatsEmoji(character))));
}
bool IsNewSequence(const Character* const textBuffer,
// Default initialization does not keycap sequence
bool isNewKeycapSequence = false;
- if(currentCharacterIndex < lastCharacterIndex)
+ if(currentCharacterIndex <= lastCharacterIndex)
{
Character currentCharacter = *(textBuffer + currentCharacterIndex);
if(IsStartForKeycapSequence(currentCharacter))
// Default initialization does not VariationSelector sequence
bool isNewVariationSelectorSequence = false;
- if(currentCharacterIndex < lastCharacterIndex)
+ if(currentCharacterIndex <= lastCharacterIndex)
{
Character currentCharacter = *(textBuffer + currentCharacterIndex);
if(TextAbstraction::IsEmojiVariationSequences(currentCharacter))