diff --git a/idea/src/org/jetbrains/kotlin/idea/intentions/MoveMemberToCompanionObjectIntention.kt b/idea/src/org/jetbrains/kotlin/idea/intentions/MoveMemberToCompanionObjectIntention.kt index 80b6d002d93..d0c224c05c5 100644 --- a/idea/src/org/jetbrains/kotlin/idea/intentions/MoveMemberToCompanionObjectIntention.kt +++ b/idea/src/org/jetbrains/kotlin/idea/intentions/MoveMemberToCompanionObjectIntention.kt @@ -161,11 +161,11 @@ class MoveMemberToCompanionObjectIntention : SelfTargetingRangeIntention() @@ -217,10 +217,12 @@ class MoveMemberToCompanionObjectIntention : SelfTargetingRangeIntention { - (usageElement as? PsiReferenceExpression) + if (javaCompanionRef != null) { + (usageElement as? PsiReferenceExpression) ?.qualifierExpression ?.replace(javaCompanionRef) ?.let { javaCodeStyleManager.shortenClassReferences(it) } + } } is ExplicitReceiverUsageInfo -> { diff --git a/idea/testData/intentions/moveToCompanion/expectClass.kt b/idea/testData/intentions/moveToCompanion/expectClass.kt new file mode 100644 index 00000000000..029a579b6b7 --- /dev/null +++ b/idea/testData/intentions/moveToCompanion/expectClass.kt @@ -0,0 +1,5 @@ +// ERROR: The feature "multi platform projects" is experimental and should be enabled explicitly + +expect class Some { + val x: Int +} \ No newline at end of file diff --git a/idea/testData/intentions/moveToCompanion/expectClass.kt.after b/idea/testData/intentions/moveToCompanion/expectClass.kt.after new file mode 100644 index 00000000000..68005674181 --- /dev/null +++ b/idea/testData/intentions/moveToCompanion/expectClass.kt.after @@ -0,0 +1,7 @@ +// ERROR: The feature "multi platform projects" is experimental and should be enabled explicitly + +expect class Some { + companion object { + val x: Int + } +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/intentions/IntentionTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/intentions/IntentionTestGenerated.java index 2e01713e76b..d86e3c80c5f 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/intentions/IntentionTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/intentions/IntentionTestGenerated.java @@ -12133,6 +12133,11 @@ public class IntentionTestGenerated extends AbstractIntentionTest { runTest("idea/testData/intentions/moveToCompanion/enumEntry.kt"); } + @TestMetadata("expectClass.kt") + public void testExpectClass() throws Exception { + runTest("idea/testData/intentions/moveToCompanion/expectClass.kt"); + } + @TestMetadata("functionWithOverride.kt") public void testFunctionWithOverride() throws Exception { runTest("idea/testData/intentions/moveToCompanion/functionWithOverride.kt");