public void handleCopy(TextSelectionDelegate selectionDelegate) { TextEditingValue value = selectionDelegate.textEditingValue; Clipboard.setData(new ClipboardData( text: value.selection.textInside(value.text) )); selectionDelegate.textEditingValue = new TextEditingValue( text: value.text, selection: TextSelection.collapsed(offset: value.selection.end) ); selectionDelegate.bringIntoView(selectionDelegate.textEditingValue.selection.extendPos); selectionDelegate.hideToolbar(); }
public void handlePaste(TextSelectionDelegate selectionDelegate) { TextEditingValue value = selectionDelegate.textEditingValue; // Snapshot the input before using `await`. Clipboard.getData(Clipboard.kTextPlain).Then((data) => { if (data != null) { selectionDelegate.textEditingValue = new TextEditingValue( text: value.selection.textBefore(value.text) + data.text + value.selection.textAfter(value.text), selection: TextSelection.collapsed( offset: value.selection.start + data.text.Length ) ); } selectionDelegate.bringIntoView(selectionDelegate.textEditingValue.selection.extendPos); selectionDelegate.hideToolbar(); }); }