void (@NotNull InsertionContext context, @NotNull LookupElementDecorator<LookupElement> item) { final char completionChar = context.getCompletionChar(); if (completionChar == '\'' || completionChar == '\"') { context.setAddCompletionChar(false); item.getDelegate().handleInsert(context); final Editor editor = context.getEditor(); final Document document = editor.getDocument(); int tailOffset = editor.getCaretModel().getOffset(); if (document.getTextLength() > tailOffset) { final char c = document.getCharsSequence().charAt(tailOffset); if (c == completionChar || completionChar == '\'') { editor.getCaretModel().moveToOffset(tailOffset + 1); } } } else { item.getDelegate().handleInsert(context); } }