Text field caret handling wip