diff --git a/platform/lang-impl/src/com/intellij/codeInsight/generation/CommentByBlockCommentHandler.java b/platform/lang-impl/src/com/intellij/codeInsight/generation/CommentByBlockCommentHandler.java index 6a879e9000b2..a858bb789133 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/generation/CommentByBlockCommentHandler.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/generation/CommentByBlockCommentHandler.java @@ -155,6 +155,7 @@ public class CommentByBlockCommentHandler implements CodeInsightActionHandler { final Boolean value = ((IndentedCommenter)commenter).forceIndentedLineComment(); if (value != null && value == Boolean.TRUE) { selectionStart = myDocument.getLineStartOffset(myDocument.getLineNumber(selectionStart)); + selectionEnd = myDocument.getLineEndOffset(myDocument.getLineNumber(selectionEnd)); } } commentRange(selectionStart, selectionEnd, prefix, suffix, commenter); @@ -162,6 +163,16 @@ public class CommentByBlockCommentHandler implements CodeInsightActionHandler { else { EditorUtil.fillVirtualSpaceUntilCaret(editor); int caretOffset = myEditor.getCaretModel().getOffset(); + if (commenter instanceof IndentedCommenter) { + final Boolean value = ((IndentedCommenter)commenter).forceIndentedLineComment(); + if (value != null && value == Boolean.TRUE) { + final int lineNumber = myDocument.getLineNumber(caretOffset); + final int start = myDocument.getLineStartOffset(lineNumber); + final int end = myDocument.getLineEndOffset(lineNumber); + commentRange(start, end, prefix, suffix, commenter); + return; + } + } myDocument.insertString(caretOffset, prefix + suffix); myEditor.getCaretModel().moveToOffset(caretOffset + prefix.length()); }