#include "config.h"
#include "platform/fonts/Character.h"
-#include "platform/fonts/FontPlatformFeatures.h"
#include "wtf/StdLibExtras.h"
#include "wtf/text/StringBuilder.h"
unsigned Character::expansionOpportunityCount(const UChar* characters, size_t length, TextDirection direction, bool& isAfterExpansion)
{
- static bool expandAroundIdeographs = FontPlatformFeatures::canExpandAroundIdeographsInComplexText();
unsigned count = 0;
if (direction == LTR) {
for (size_t i = 0; i < length; ++i) {
character = U16_GET_SUPPLEMENTARY(character, characters[i + 1]);
i++;
}
- if (expandAroundIdeographs && isCJKIdeographOrSymbol(character)) {
- if (!isAfterExpansion)
- count++;
- count++;
- isAfterExpansion = true;
- continue;
- }
isAfterExpansion = false;
}
} else {
character = U16_GET_SUPPLEMENTARY(characters[i - 2], character);
i--;
}
- if (expandAroundIdeographs && isCJKIdeographOrSymbol(character)) {
- if (!isAfterExpansion)
- count++;
- count++;
- isAfterExpansion = true;
- continue;
- }
isAfterExpansion = false;
}
}