From e8aa14a2837de92d7bf205f96b6c1cd2356b80ad Mon Sep 17 00:00:00 2001 From: Toshiaki Kameyama Date: Sat, 14 Sep 2019 09:09:01 +0900 Subject: [PATCH] Method sepatators: show separator between companion object and function #KT-24352 Fixed --- .../idea/highlighter/markers/KotlinLineMarkerProvider.kt | 5 ++++- idea/testData/codeInsight/lineMarker/MethodSeparators.kt | 4 ++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/highlighter/markers/KotlinLineMarkerProvider.kt b/idea/src/org/jetbrains/kotlin/idea/highlighter/markers/KotlinLineMarkerProvider.kt index 89ee73e3a18..3d170255289 100644 --- a/idea/src/org/jetbrains/kotlin/idea/highlighter/markers/KotlinLineMarkerProvider.kt +++ b/idea/src/org/jetbrains/kotlin/idea/highlighter/markers/KotlinLineMarkerProvider.kt @@ -65,7 +65,10 @@ class KotlinLineMarkerProvider : LineMarkerProviderDescriptor() { } private fun PsiElement?.canHaveSeparator() = - this is KtFunction || this is KtClassInitializer || (this is KtProperty && !isLocal) + this is KtFunction + || this is KtClassInitializer + || (this is KtProperty && !isLocal) + || ((this is KtObjectDeclaration && this.isCompanion())) private fun PsiElement.wantsSeparator() = this is KtFunction || StringUtil.getLineBreakCount(text) > 0 diff --git a/idea/testData/codeInsight/lineMarker/MethodSeparators.kt b/idea/testData/codeInsight/lineMarker/MethodSeparators.kt index f7fd72eaff1..a63ddc5e07c 100644 --- a/idea/testData/codeInsight/lineMarker/MethodSeparators.kt +++ b/idea/testData/codeInsight/lineMarker/MethodSeparators.kt @@ -39,4 +39,8 @@ class Foo { fun f1() = 1 fun f2() = 2 + + companion object { + const val C = 1 + } }