/// <inheritdoc /> public TextCaret GetNextPosition() { var maybeNextOffset = Buffer.GetNextOffset(Offset); if (maybeNextOffset != null) { var nextOffset = maybeNextOffset.GetValueOrDefault(); return(new TextCaret(Content, nextOffset)); } // point to just after the last character (unless we're empty in which case we're already doing that) if (Buffer.GetLastOffset().GraphemeOffset == Offset.GraphemeOffset && Buffer.GraphemeLength != 0) { return(new TextCaret(Content, TextOffsetHelpers.CreateAfterTextOffset(Buffer))); } return(Invalid); }
/// <summary> Gets a cursor that is looking at the end of the content. </summary> public static TextCaret FromEnd(TextBlockContent content) { return(new TextCaret(content, TextOffsetHelpers.CreateAfterTextOffset(content.Buffer))); }