diff --git a/plugins/kotlin/code-insight/intentions-k2/tests/test/org/jetbrains/kotlin/idea/k2/intentions/tests/K2IntentionTestGenerated.java b/plugins/kotlin/code-insight/intentions-k2/tests/test/org/jetbrains/kotlin/idea/k2/intentions/tests/K2IntentionTestGenerated.java index cc484d188a1d..e1765e28d143 100644 --- a/plugins/kotlin/code-insight/intentions-k2/tests/test/org/jetbrains/kotlin/idea/k2/intentions/tests/K2IntentionTestGenerated.java +++ b/plugins/kotlin/code-insight/intentions-k2/tests/test/org/jetbrains/kotlin/idea/k2/intentions/tests/K2IntentionTestGenerated.java @@ -12481,6 +12481,11 @@ public abstract class K2IntentionTestGenerated extends AbstractK2IntentionTest { runTest("../../../idea/tests/testData/intentions/convertParameterToReceiver/recursiveCall1.kt"); } + @TestMetadata("simplifiedQualifier.kt") + public void testSimplifiedQualifier() throws Exception { + runTest("../../../idea/tests/testData/intentions/convertParameterToReceiver/simplifiedQualifier.kt"); + } + @TestMetadata("topLevelFun.kt") public void testTopLevelFun() throws Exception { runTest("../../../idea/tests/testData/intentions/convertParameterToReceiver/topLevelFun.kt"); diff --git a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/intentions/K1IntentionTestGenerated.java b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/intentions/K1IntentionTestGenerated.java index ce4e02de80d8..1758e5adbf46 100644 --- a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/intentions/K1IntentionTestGenerated.java +++ b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/intentions/K1IntentionTestGenerated.java @@ -7305,6 +7305,11 @@ public abstract class K1IntentionTestGenerated extends AbstractK1IntentionTest { runTest("testData/intentions/convertParameterToReceiver/recursiveCall1.kt"); } + @TestMetadata("simplifiedQualifier.kt") + public void testSimplifiedQualifier() throws Exception { + runTest("testData/intentions/convertParameterToReceiver/simplifiedQualifier.kt"); + } + @TestMetadata("topLevelFun.kt") public void testTopLevelFun() throws Exception { runTest("testData/intentions/convertParameterToReceiver/topLevelFun.kt"); diff --git a/plugins/kotlin/idea/tests/testData/intentions/convertParameterToReceiver/simplifiedQualifier.kt b/plugins/kotlin/idea/tests/testData/intentions/convertParameterToReceiver/simplifiedQualifier.kt new file mode 100644 index 000000000000..4f307ea80289 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/intentions/convertParameterToReceiver/simplifiedQualifier.kt @@ -0,0 +1,8 @@ +// WITH_STDLIB +class A { + fun foo3() = 42 + + fun test(a: String) { + foo3() + } +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/intentions/convertParameterToReceiver/simplifiedQualifier.kt.after b/plugins/kotlin/idea/tests/testData/intentions/convertParameterToReceiver/simplifiedQualifier.kt.after new file mode 100644 index 000000000000..90faa9f788cc --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/intentions/convertParameterToReceiver/simplifiedQualifier.kt.after @@ -0,0 +1,8 @@ +// WITH_STDLIB +class A { + fun foo3() = 42 + + fun String.test() { + foo3() + } +} \ No newline at end of file diff --git a/plugins/kotlin/refactorings/kotlin.refactorings.k2/src/org/jetbrains/kotlin/idea/k2/refactoring/changeSignature/usages/KotlinParameterUsage.kt b/plugins/kotlin/refactorings/kotlin.refactorings.k2/src/org/jetbrains/kotlin/idea/k2/refactoring/changeSignature/usages/KotlinParameterUsage.kt index 523f56f23427..9e24254b117c 100644 --- a/plugins/kotlin/refactorings/kotlin.refactorings.k2/src/org/jetbrains/kotlin/idea/k2/refactoring/changeSignature/usages/KotlinParameterUsage.kt +++ b/plugins/kotlin/refactorings/kotlin.refactorings.k2/src/org/jetbrains/kotlin/idea/k2/refactoring/changeSignature/usages/KotlinParameterUsage.kt @@ -78,6 +78,10 @@ internal class KotlinImplicitThisUsage( element: KtElement, allUsages: Array ): KtElement { + val parent = element.parent + if (parent is KtCallExpression) { + return processUsage(changeInfo, parent, allUsages) + } val newQualifiedCall = KtPsiFactory(element.project).createExpression("$newReceiver.${element.text}" ) as KtQualifiedExpression return element.replace(newQualifiedCall).parent as KtElement