Lines Matching refs:start
354 // Cluster range is normalized ([start:end) start < end regardless of TextDirection
359 if (text.end > this->fTextRange.start) {
369 // Deal with the case when either start or end are not align with glyph cluster edge
373 // LTR: [start:end)
374 found = clusterRange.start != fClusterRange.end;
375 clusterRange.start = fOwner->clusterIndex(text.start);
378 // RTL: (start:end]
379 clusterRange.start = fOwner->clusterIndex(text.end);
380 clusterRange.end = fOwner->clusterIndex(text.start + 1);
381 found = clusterRange.end != fClusterRange.start;
386 clusterRange.start,
391 TextIndex start = fOwner->findPreviousGlyphClusterBoundary(text.start);
393 return std::make_tuple(true, start, end);
396 // Adjust the text to grapheme edges so the first grapheme start is in the text and the last grapheme start is in the text
400 TextIndex start = fOwner->findPreviousGraphemeBoundary(text.start);
402 return std::make_tuple(true, start, end);
408 auto correctIndex = leftToRight() ? fClusterRange.start + index : fClusterRange.end - index - 1;
565 if (ch < fTextRange.start || ch >= fTextRange.end) {
568 auto shift = ch - fTextRange.start;
575 if (ch < fTextRange.start || ch >= fTextRange.end) {