diff --git a/idea/src/org/jetbrains/jet/plugin/actions/JavaToKotlinAction.kt b/idea/src/org/jetbrains/jet/plugin/actions/JavaToKotlinAction.kt index 80c740e33d3..91d9840ffc3 100644 --- a/idea/src/org/jetbrains/jet/plugin/actions/JavaToKotlinAction.kt +++ b/idea/src/org/jetbrains/jet/plugin/actions/JavaToKotlinAction.kt @@ -40,10 +40,8 @@ import org.jetbrains.jet.lang.psi.JetFile public class JavaToKotlinAction : AnAction() { override fun actionPerformed(e: AnActionEvent) { - val virtualFiles = e.getData(CommonDataKeys.VIRTUAL_FILE_ARRAY)!! + val selectedJavaFiles = selectedJavaFiles(e) val project = CommonDataKeys.PROJECT.getData(e.getDataContext())!! - val selectedJavaFiles = allJavaFiles(virtualFiles, project) - if (selectedJavaFiles.isEmpty()) return CommandProcessor.getInstance().executeCommand(project, object : Runnable { override fun run() { @@ -59,10 +57,16 @@ public class JavaToKotlinAction : AnAction() { } override fun update(e: AnActionEvent) { - val enabled = e.getData(CommonDataKeys.VIRTUAL_FILE_ARRAY)?.isNotEmpty() ?: false + val enabled = selectedJavaFiles(e).isNotEmpty() e.getPresentation().setEnabled(enabled) } + private fun selectedJavaFiles(e: AnActionEvent): List { + val virtualFiles = e.getData(CommonDataKeys.VIRTUAL_FILE_ARRAY) ?: return listOf() + val project = CommonDataKeys.PROJECT.getData(e.getDataContext()) ?: return listOf() + return allJavaFiles(virtualFiles, project) + } + private fun allJavaFiles(filesOrDirs: Array, project: Project): List { val allFiles = allFiles(filesOrDirs) val manager = PsiManager.getInstance(project)