diff --git a/idea/src/org/jetbrains/kotlin/idea/intentions/declarations/ConvertMemberToExtensionIntention.kt b/idea/src/org/jetbrains/kotlin/idea/intentions/declarations/ConvertMemberToExtensionIntention.kt index b53060505f5..b57b971dd93 100644 --- a/idea/src/org/jetbrains/kotlin/idea/intentions/declarations/ConvertMemberToExtensionIntention.kt +++ b/idea/src/org/jetbrains/kotlin/idea/intentions/declarations/ConvertMemberToExtensionIntention.kt @@ -121,13 +121,16 @@ public class ConvertMemberToExtensionIntention : JetSelfTargetingRangeIntention< } } - if (bodyToSelect != null) { - PsiDocumentManager.getInstance(project).doPostponedOperationsAndUnblockDocument(editor.getDocument()) + PsiDocumentManager.getInstance(project).doPostponedOperationsAndUnblockDocument(editor.getDocument()) + if (bodyToSelect != null) { val range = bodyToSelect!!.getTextRange() editor.moveCaret(range.getStartOffset(), ScrollType.CENTER) editor.getSelectionModel().setSelection(range.getStartOffset(), range.getEndOffset()) } + else { + editor.moveCaret(extension.getTextOffset(), ScrollType.CENTER) + } } private val THROW_UNSUPPORTED_OPERATION_EXCEPTION = "throw UnsupportedOperationException()" diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/explicitUnit.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/explicitUnit.kt.after index 7b88283da29..e46bccaa70f 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/explicitUnit.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/explicitUnit.kt.after @@ -1,4 +1,4 @@ class Owner { } -fun Owner.f(): Unit {} \ No newline at end of file +fun Owner.f(): Unit {} \ No newline at end of file diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/functionType.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/functionType.kt.after index 4af0824a0d7..cea60438800 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/functionType.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/functionType.kt.after @@ -1,6 +1,6 @@ class Owner { } -fun Owner.f(p: () -> Unit): (Int) -> String { +fun Owner.f(p: () -> Unit): (Int) -> String { return { it.toString() } } diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/genericClass.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/genericClass.kt.after index 968268f2435..f616d1e4b6f 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/genericClass.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/genericClass.kt.after @@ -1,4 +1,4 @@ abstract class Owner { } -fun Owner.f(t: T): T = t \ No newline at end of file +fun Owner.f(t: T): T = t \ No newline at end of file diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/genericFun.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/genericFun.kt.after index ac6c26ebb88..7716a09fc66 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/genericFun.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/genericFun.kt.after @@ -1,4 +1,4 @@ abstract class Owner { } -fun Owner.f(t: T): T = t \ No newline at end of file +fun Owner.f(t: T): T = t \ No newline at end of file diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/genericFunInGenericClass.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/genericFunInGenericClass.kt.after index 217e1bb8e21..86d4f0d8d76 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/genericFunInGenericClass.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/genericFunInGenericClass.kt.after @@ -1,4 +1,4 @@ abstract class Owner { } -fun Owner.f(t: T, r: R): R = r +fun Owner.f(t: T, r: R): R = r diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/genericFunInGenericClassWithUpperBounds.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/genericFunInGenericClassWithUpperBounds.kt.after index 42e9aae4a23..040e564d8b8 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/genericFunInGenericClassWithUpperBounds.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/genericFunInGenericClassWithUpperBounds.kt.after @@ -1,4 +1,4 @@ abstract class Owner> { } -fun , R : T> Owner.f(t: T, r: R): R = r +fun , R : T> Owner.f(t: T, r: R): R = r diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/genericFunParamAfterName.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/genericFunParamAfterName.kt.after index 07e5db3ee96..0142c812862 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/genericFunParamAfterName.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/genericFunParamAfterName.kt.after @@ -1,4 +1,4 @@ abstract class Owner { } -fun Owner.f(t: T): T = t \ No newline at end of file +fun Owner.f(t: T): T = t \ No newline at end of file diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/internal.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/internal.kt.after index 70e71d75359..3f62390d1b9 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/internal.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/internal.kt.after @@ -1,4 +1,4 @@ abstract class Owner { } -internal fun Owner.f() = 1 \ No newline at end of file +internal fun Owner.f() = 1 \ No newline at end of file diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/nonBlockBodyNoType.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/nonBlockBodyNoType.kt.after index c1fc3b4f47c..32e78b0a3f1 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/nonBlockBodyNoType.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/nonBlockBodyNoType.kt.after @@ -1,4 +1,4 @@ class Owner { } -fun Owner.f() = 1 \ No newline at end of file +fun Owner.f() = 1 \ No newline at end of file diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/nonBlockBodyWithType.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/nonBlockBodyWithType.kt.after index 1214f778330..600a718cb9e 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/nonBlockBodyWithType.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/nonBlockBodyWithType.kt.after @@ -1,4 +1,4 @@ class Owner { } -fun Owner.f(): Int = 1 \ No newline at end of file +fun Owner.f(): Int = 1 \ No newline at end of file diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/private.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/private.kt.after index dca6558532e..2a03f8d061e 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/private.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/private.kt.after @@ -1,4 +1,4 @@ abstract class Owner { } -private fun Owner.f() = 1 \ No newline at end of file +private fun Owner.f() = 1 \ No newline at end of file diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/protected.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/protected.kt.after index 6847afd6630..8cb2fafa476 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/protected.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/protected.kt.after @@ -1,4 +1,4 @@ abstract class Owner { } -fun Owner.f(): Int = 1 +fun Owner.f(): Int = 1 diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/public.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/public.kt.after index f48381003da..b5041f554ac 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/public.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/public.kt.after @@ -1,4 +1,4 @@ abstract class Owner { } -public fun Owner.f(): Int = 1 +public fun Owner.f(): Int = 1 diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/simple.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/simple.kt.after index 7f647b217f3..81338581068 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/simple.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/simple.kt.after @@ -1,4 +1,4 @@ class Owner { } -fun Owner.f() {} \ No newline at end of file +fun Owner.f() {} \ No newline at end of file diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/typeFqName.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/typeFqName.kt.after index f99d05ea166..5919f8c8c86 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/typeFqName.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/typeFqName.kt.after @@ -1,6 +1,6 @@ class Owner { } -fun Owner.f(p: kotlin.Int): kotlin.String { +fun Owner.f(p: kotlin.Int): kotlin.String { return p.toString() } diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/unknownType.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/unknownType.kt.after index 2dcd74b759b..6d7d4e9ad2e 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/unknownType.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/unknownType.kt.after @@ -5,5 +5,5 @@ class Owner { } -fun Owner.f(p: Foo): bar.Baz { +fun Owner.f(p: Foo): bar.Baz { } diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/valWithGetter.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/valWithGetter.kt.after index 4d472c6c322..b7e08d326c6 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/valWithGetter.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/valWithGetter.kt.after @@ -1,5 +1,5 @@ class Owner { } -val Owner.p: Int +val Owner.p: Int get() = 1 \ No newline at end of file diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/valWithGetterBlockBody.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/valWithGetterBlockBody.kt.after index 9685b52acab..dbafce3c153 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/valWithGetterBlockBody.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/valWithGetterBlockBody.kt.after @@ -1,5 +1,5 @@ class Owner { } -val Owner.p: Int +val Owner.p: Int get() { return 1} \ No newline at end of file diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/varWithGetterAndSetter.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/varWithGetterAndSetter.kt.after index feb0cffecbc..95ba982910a 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/varWithGetterAndSetter.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/varWithGetterAndSetter.kt.after @@ -1,6 +1,6 @@ class Owner { } -var Owner.p: Int +var Owner.p: Int get() = 1 set(v) {} \ No newline at end of file diff --git a/idea/testData/intentions/declarations/convertMemberToExtension/withType.kt.after b/idea/testData/intentions/declarations/convertMemberToExtension/withType.kt.after index 1adf1cb12fa..875b576a890 100644 --- a/idea/testData/intentions/declarations/convertMemberToExtension/withType.kt.after +++ b/idea/testData/intentions/declarations/convertMemberToExtension/withType.kt.after @@ -1,4 +1,4 @@ class Owner { } -fun Owner.f(): Int { return 1 } +fun Owner.f(): Int { return 1 }