diff --git a/platform/lang-api/src/com/intellij/lang/folding/CustomFoldingSurroundDescriptor.java b/platform/lang-api/src/com/intellij/lang/folding/CustomFoldingSurroundDescriptor.java index 17da710c06c5..4062cb45beef 100644 --- a/platform/lang-api/src/com/intellij/lang/folding/CustomFoldingSurroundDescriptor.java +++ b/platform/lang-api/src/com/intellij/lang/folding/CustomFoldingSurroundDescriptor.java @@ -200,8 +200,6 @@ public class CustomFoldingSurroundDescriptor implements SurroundDescriptor { int prefixLength = linePrefix.length(); int startOffset = firstElement.getTextRange().getStartOffset(); final Document document = editor.getDocument(); - final int startLineNumber = document.getLineNumber(startOffset); - final String startIndent = document.getText(new TextRange(document.getLineStartOffset(startLineNumber), startOffset)); int endOffset = lastElement.getTextRange().getEndOffset(); int delta = 0; TextRange rangeToSelect = new TextRange(startOffset, startOffset); @@ -211,11 +209,12 @@ public class CustomFoldingSurroundDescriptor implements SurroundDescriptor { startText = startText.replace("?", DEFAULT_DESC_TEXT); rangeToSelect = new TextRange(startOffset + descPos, startOffset + descPos + DEFAULT_DESC_TEXT.length()); } - String startString = linePrefix + startText + "\n" + startIndent; + String startString = linePrefix + startText + "\n"; String endString = "\n" + linePrefix + myProvider.getEndString(); document.insertString(endOffset, endString); delta += endString.length(); - document.insertString(startOffset, startString); + final int startCommentInsertionOffset = document.getLineStartOffset(document.getLineNumber(startOffset)); + document.insertString(startCommentInsertionOffset, startString); delta += startString.length(); rangeToSelect = rangeToSelect.shiftRight(prefixLength); PsiDocumentManager documentManager = PsiDocumentManager.getInstance(project); @@ -223,7 +222,7 @@ public class CustomFoldingSurroundDescriptor implements SurroundDescriptor { adjustLineIndent(project, psiFile, language, new TextRange(endOffset + delta - endString.length(), endOffset + delta)); adjustLineIndent(project, psiFile, language, - new TextRange(startOffset, startOffset + startString.length())); + new TextRange(startCommentInsertionOffset, startCommentInsertionOffset + startString.length())); return rangeToSelect; }