void (int caretOffset) { int lineStartOffset = getLineStartOffsetByTotalOffset(caretOffset); myVisualColumnToRestore = myCaretModel.getVisualPosition().column; myCaretIndentToRestore = myDocument.getText(TextRange.create(lineStartOffset, caretOffset)); myBeforeCaretRangeMarker = myDocument.createRangeMarker(0, lineStartOffset); }