onDoubleTapWithPosition method
Implementation
void onDoubleTapWithPosition(
Offset localPosition,
RenderBox renderBox,
Widget widget,
) {
final paragraph = renderBox as RenderFluentParagraph;
final fragmentResult = paragraph.getFragmentAtPosition(localPosition);
if (fragmentResult != null) {
final node = document.nodeById(fragmentResult.fragmentId);
if (node is Fragment) {
final text = node.text;
final offset = fragmentResult.localOffset;
int start = offset;
int end = offset;
while (start > 0 && _isWordChar(text[start - 1])) {
start--;
}
while (end < text.length && _isWordChar(text[end])) {
end++;
}
document.cursor.moveTo(node.id, start);
document.cursor.focusTo(node.id, end);
syncSelectionManager(document);
document.cursorOnlyUpdate();
}
}
}