diff --git a/idea/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt b/idea/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt index 6b2494ff073..33893cae43f 100644 --- a/idea/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt +++ b/idea/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt @@ -236,6 +236,7 @@ fun createSpacingBuilder(settings: CodeStyleSettings, builderUtil: KotlinSpacing beforeInside(SECONDARY_CONSTRUCTOR, TokenSet.create(BODY, CLASS_BODY)).lineBreakInCode() beforeInside(CLASS, TokenSet.create(BODY, CLASS_BODY)).lineBreakInCode() beforeInside(OBJECT_DECLARATION, TokenSet.create(BODY, CLASS_BODY)).lineBreakInCode() + beforeInside(PROPERTY, WHEN).spaces(0) before(PROPERTY).lineBreakInCode() after(DOC_COMMENT).lineBreakInCode() diff --git a/idea/testData/formatter/WhenWithVariable.after.kt b/idea/testData/formatter/WhenWithVariable.after.kt new file mode 100644 index 00000000000..762b32f686a --- /dev/null +++ b/idea/testData/formatter/WhenWithVariable.after.kt @@ -0,0 +1,29 @@ +fun test() { + when (val i = 1) { + + } + + when (var i = 2) { + + } + + when (var i = 2) { + + } + + when (var i = 2 + ) { + + } + + when ( + val i = 3) { + + } + + when ( + + + val i = 4) { + } +} \ No newline at end of file diff --git a/idea/testData/formatter/WhenWithVariable.kt b/idea/testData/formatter/WhenWithVariable.kt new file mode 100644 index 00000000000..3fd9aabbbe5 --- /dev/null +++ b/idea/testData/formatter/WhenWithVariable.kt @@ -0,0 +1,31 @@ +fun test() { + when (val i = 1) { + + } + + when (var i = 2) { + + } + + when ( var i = 2 ) { + + } + + when ( var i = 2 + ) { + + } + + when ( + val i = 3) { + + } + + when ( + + + + + val i = 4) { + } +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java b/idea/tests/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java index f26b8e6aecd..57fc6c3407b 100644 --- a/idea/tests/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java @@ -776,6 +776,11 @@ public class FormatterTestGenerated extends AbstractFormatterTest { runTest("idea/testData/formatter/WhenLinesBeforeLbrace.after.kt"); } + @TestMetadata("WhenWithVariable.after.kt") + public void testWhenWithVariable() throws Exception { + runTest("idea/testData/formatter/WhenWithVariable.after.kt"); + } + @TestMetadata("WhereClause.after.kt") public void testWhereClause() throws Exception { runTest("idea/testData/formatter/WhereClause.after.kt");