primaryDirection property
TextDirection
get
primaryDirection
Returns the primary direction based on character count For mixed text, returns the direction with more characters
Implementation
TextDirection get primaryDirection {
if (_root == null) return TextDirection.ltr;
int rtlCount = 0;
int ltrCount = 0;
for (final chunk in _root!.chunks()) {
for (int i = 0; i < chunk.length; i++) {
final codeUnit = chunk.codeUnitAt(i);
if (BiDi.isRtlChar(codeUnit)) {
rtlCount++;
} else if (BiDi.isLtrChar(codeUnit)) {
ltrCount++;
}
}
}
if (rtlCount == 0 && ltrCount == 0) return TextDirection.ltr;
return rtlCount > ltrCount ? TextDirection.rtl : TextDirection.ltr;
}