diff --git a/idea/src/META-INF/plugin.xml b/idea/src/META-INF/plugin.xml
index 1a71ec6edb0..3b839745ff3 100644
--- a/idea/src/META-INF/plugin.xml
+++ b/idea/src/META-INF/plugin.xml
@@ -97,10 +97,15 @@
+
+
diff --git a/idea/src/org/jetbrains/jet/plugin/refactoring/JetRefactoringSupportProvider.java b/idea/src/org/jetbrains/jet/plugin/refactoring/JetRefactoringSupportProvider.java
index ae2fa5543e8..4031afc1a7a 100644
--- a/idea/src/org/jetbrains/jet/plugin/refactoring/JetRefactoringSupportProvider.java
+++ b/idea/src/org/jetbrains/jet/plugin/refactoring/JetRefactoringSupportProvider.java
@@ -39,8 +39,8 @@ public class JetRefactoringSupportProvider extends RefactoringSupportProvider {
return new KotlinIntroduceVariableHandler();
}
- @Override
- public RefactoringActionHandler getExtractMethodHandler() {
+ @NotNull
+ public RefactoringActionHandler getExtractFunctionHandler() {
return new ExtractKotlinFunctionHandler();
}
diff --git a/idea/src/org/jetbrains/jet/plugin/refactoring/extractFunction/ExtractFunctionToScopeAction.kt b/idea/src/org/jetbrains/jet/plugin/refactoring/extractFunction/ExtractFunctionAction.kt
similarity index 62%
rename from idea/src/org/jetbrains/jet/plugin/refactoring/extractFunction/ExtractFunctionToScopeAction.kt
rename to idea/src/org/jetbrains/jet/plugin/refactoring/extractFunction/ExtractFunctionAction.kt
index 0af10c1561e..5ab8f34a28a 100644
--- a/idea/src/org/jetbrains/jet/plugin/refactoring/extractFunction/ExtractFunctionToScopeAction.kt
+++ b/idea/src/org/jetbrains/jet/plugin/refactoring/extractFunction/ExtractFunctionAction.kt
@@ -23,20 +23,23 @@ import com.intellij.lang.refactoring.RefactoringSupportProvider
import org.jetbrains.jet.lang.psi.JetElement
import org.jetbrains.jet.plugin.refactoring.JetRefactoringSupportProvider
-public class ExtractFunctionToScopeAction: BasePlatformRefactoringAction() {
+public abstract class AbstractExtractFunctionAction: BasePlatformRefactoringAction() {
{
setInjectedContext(true)
}
- override fun isAvailableInEditorOnly(): Boolean {
- return true
- }
+ override fun isAvailableInEditorOnly(): Boolean = true
- protected override fun isEnabledOnElements(elements: Array): Boolean {
- return elements.all { it is JetElement }
- }
-
- override fun getRefactoringHandler(provider: RefactoringSupportProvider): RefactoringActionHandler? {
- return (provider as? JetRefactoringSupportProvider)?.getExtractFunctionToScopeHandler()
- }
+ protected override fun isEnabledOnElements(elements: Array): Boolean =
+ elements.all { it is JetElement }
}
+
+public class ExtractFunctionAction: AbstractExtractFunctionAction() {
+ override fun getRefactoringHandler(provider: RefactoringSupportProvider): RefactoringActionHandler? =
+ (provider as? JetRefactoringSupportProvider)?.getExtractFunctionHandler()
+}
+
+public class ExtractFunctionToScopeAction: AbstractExtractFunctionAction() {
+ override fun getRefactoringHandler(provider: RefactoringSupportProvider): RefactoringActionHandler? =
+ (provider as? JetRefactoringSupportProvider)?.getExtractFunctionToScopeHandler()
+}
\ No newline at end of file