diff --git a/java/java-impl/src/com/intellij/psi/formatter/java/JavaSpacePropertyProcessor.java b/java/java-impl/src/com/intellij/psi/formatter/java/JavaSpacePropertyProcessor.java index f544a071997d..821460ad9343 100644 --- a/java/java-impl/src/com/intellij/psi/formatter/java/JavaSpacePropertyProcessor.java +++ b/java/java-impl/src/com/intellij/psi/formatter/java/JavaSpacePropertyProcessor.java @@ -368,18 +368,8 @@ public class JavaSpacePropertyProcessor extends JavaElementVisitor { private boolean shouldHandleAsSimpleMethod(@NotNull PsiMethod method) { if (!mySettings.KEEP_SIMPLE_METHODS_IN_ONE_LINE) return false; - - boolean skipElement = true; - for (PsiElement element : method.getChildren()) { - if (element instanceof PsiTypeElement) skipElement = false; - if (skipElement) continue; - - if (element.textContains('\n')) { - return false; - } - } - - return true; + PsiCodeBlock body = method.getBody(); + return body != null && !body.textContains('\n'); } private static int getMethodHeaderStartOffset(@NotNull PsiMethod method) { diff --git a/java/java-tests/testSrc/com/intellij/psi/formatter/java/JavaFormatterBracesTest.java b/java/java-tests/testSrc/com/intellij/psi/formatter/java/JavaFormatterBracesTest.java index 138e12cb649f..084727dda9f5 100644 --- a/java/java-tests/testSrc/com/intellij/psi/formatter/java/JavaFormatterBracesTest.java +++ b/java/java-tests/testSrc/com/intellij/psi/formatter/java/JavaFormatterBracesTest.java @@ -329,4 +329,19 @@ public class JavaFormatterBracesTest extends AbstractJavaFormatterTest { "}\n" ); } + + public void testMethodIsSimple_IfCodeBlockHasNoLinefeeds() { + getSettings().KEEP_SIMPLE_METHODS_IN_ONE_LINE = true; + doClassTest( + "public ModelAndView handleRequestInternalEmptyMulti(\n" + + " final HttpServletRequest httpServletRequest,\n" + + " final HttpServletResponse response)\n" + + " throws IOException {}", + "public ModelAndView handleRequestInternalEmptyMulti(\n" + + " final HttpServletRequest httpServletRequest,\n" + + " final HttpServletResponse response)\n" + + " throws IOException {}" + ); + } + }