I am quite new with unity and i have simple game, where the user can press a button and some text is placed inside an inputfield, this can be done manually by typing or using the buttons, but the issue i have is that i can only place the text created at the end of the inputfield, and not where the caret is currently positioned at. Code (CSharp): public void UpdateText(string text) { var position = InputFields.caretPosition; InputFields.text = InputFields.text.Insert(position, text); }