diff --git a/idea/src/org/jetbrains/kotlin/idea/configuration/KotlinMigrationProjectComponent.kt b/idea/src/org/jetbrains/kotlin/idea/configuration/KotlinMigrationProjectComponent.kt index e6b3650f46c..8af45e59cf2 100644 --- a/idea/src/org/jetbrains/kotlin/idea/configuration/KotlinMigrationProjectComponent.kt +++ b/idea/src/org/jetbrains/kotlin/idea/configuration/KotlinMigrationProjectComponent.kt @@ -5,7 +5,6 @@ package org.jetbrains.kotlin.idea.configuration -import com.intellij.ide.DataManager import com.intellij.openapi.actionSystem.ActionManager import com.intellij.openapi.actionSystem.ActionPlaces import com.intellij.openapi.actionSystem.AnActionEvent @@ -94,10 +93,12 @@ class KotlinMigrationProjectComponent(val project: Project) { if (migrationNotificationDialog.isOK) { val action = ActionManager.getInstance().getAction(CodeMigrationAction.ACTION_ID) - val dataContext = DataManager.getInstance().dataContextFromFocus.result - val actionEvent = AnActionEvent.createFromAnAction(action, null, ActionPlaces.ACTION_SEARCH, dataContext) + val dataContext = getDataContextFromDialog(migrationNotificationDialog) + if (dataContext != null) { + val actionEvent = AnActionEvent.createFromAnAction(action, null, ActionPlaces.ACTION_SEARCH, dataContext) - action.actionPerformed(actionEvent) + action.actionPerformed(actionEvent) + } } } } diff --git a/idea/src/org/jetbrains/kotlin/idea/configuration/MigrationUtils.kt b/idea/src/org/jetbrains/kotlin/idea/configuration/MigrationUtils.kt new file mode 100644 index 00000000000..b9d5bd1ef39 --- /dev/null +++ b/idea/src/org/jetbrains/kotlin/idea/configuration/MigrationUtils.kt @@ -0,0 +1,13 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license + * that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.idea.configuration + +import com.intellij.ide.DataManager +import com.intellij.openapi.actionSystem.DataContext +import com.intellij.openapi.ui.DialogWrapper + +@Suppress("UNUSED_PARAMETER") +internal fun getDataContextFromDialog(wrapper: DialogWrapper): DataContext? = DataManager.getInstance().dataContextFromFocus.result \ No newline at end of file