diff --git a/idea/src/org/jetbrains/kotlin/idea/actions/JetAddFunctionToClassifierAction.java b/idea/src/org/jetbrains/kotlin/idea/actions/JetAddFunctionToClassifierAction.java index c0bd3609157..ccda82a652f 100644 --- a/idea/src/org/jetbrains/kotlin/idea/actions/JetAddFunctionToClassifierAction.java +++ b/idea/src/org/jetbrains/kotlin/idea/actions/JetAddFunctionToClassifierAction.java @@ -52,7 +52,7 @@ import static org.jetbrains.kotlin.psi.PsiPackage.JetPsiFactory; /** * Changes method signature to one of provided signatures. - * Based on {@link JetAddImportAction} + * Based on {@link KotlinAddImportAction} */ public class JetAddFunctionToClassifierAction implements QuestionAction { private final List functionsToAdd; diff --git a/idea/src/org/jetbrains/kotlin/idea/actions/JetAddImportAction.kt b/idea/src/org/jetbrains/kotlin/idea/actions/KotlinAddImportAction.kt similarity index 98% rename from idea/src/org/jetbrains/kotlin/idea/actions/JetAddImportAction.kt rename to idea/src/org/jetbrains/kotlin/idea/actions/KotlinAddImportAction.kt index 23e5d3af082..0e32a365942 100644 --- a/idea/src/org/jetbrains/kotlin/idea/actions/JetAddImportAction.kt +++ b/idea/src/org/jetbrains/kotlin/idea/actions/KotlinAddImportAction.kt @@ -50,7 +50,7 @@ import org.jetbrains.kotlin.idea.util.application.executeWriteCommand * Automatically adds import directive to the file for resolving reference. * Based on {@link AddImportAction} */ -public class JetAddImportAction( +public class KotlinAddImportAction( private val project: Project, private val editor: Editor, private val element: JetSimpleNameExpression, @@ -100,6 +100,9 @@ public class JetAddImportAction( .map { Variant(it.key, it.value) } .sortBy { it.priority } + public val highestPriorityFqName: FqName + get() = variants.first().fqName + override fun execute(): Boolean { PsiDocumentManager.getInstance(project).commitAllDocuments() if (!element.isValid()) return false diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/AutoImportFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/AutoImportFix.kt index ddafc745bbb..d712f8c2dca 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/AutoImportFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/AutoImportFix.kt @@ -30,7 +30,7 @@ import org.jetbrains.kotlin.descriptors.DeclarationDescriptorWithVisibility import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors import org.jetbrains.kotlin.idea.JetBundle -import org.jetbrains.kotlin.idea.actions.JetAddImportAction +import org.jetbrains.kotlin.idea.actions.KotlinAddImportAction import org.jetbrains.kotlin.idea.caches.resolve.getResolutionFacade import org.jetbrains.kotlin.idea.caches.resolve.getResolveScope import org.jetbrains.kotlin.idea.core.KotlinIndicesHelper @@ -41,10 +41,9 @@ import org.jetbrains.kotlin.psi.JetPsiUtil import org.jetbrains.kotlin.psi.JetSimpleNameExpression import org.jetbrains.kotlin.psi.psiUtil.isImportDirectiveExpression import org.jetbrains.kotlin.resolve.BindingContext -import org.jetbrains.kotlin.resolve.DescriptorUtils import org.jetbrains.kotlin.resolve.lazy.BodyResolveMode import org.jetbrains.kotlin.utils.CachedValueProperty -import java.util.ArrayList +import java.util.* /** * Check possibility and perform fix for unresolved references. @@ -70,10 +69,9 @@ public class AutoImportFix(element: JetSimpleNameExpression) : JetHintAction 1, DescriptorUtils.getFqNameSafe(suggestions.first()).asString()) - - val project = editor.getProject() ?: return false - HintManager.getInstance().showQuestionHint(editor, hintText, element.getTextOffset(), element.getTextRange()!!.getEndOffset(), createAction(project, editor)) + val addImportAction = createAction(element.project, editor) + val hintText = ShowAutoImportPass.getMessage(suggestions.size() > 1, addImportAction.highestPriorityFqName.asString()) + HintManager.getInstance().showQuestionHint(editor, hintText, element.getTextOffset(), element.getTextRange()!!.getEndOffset(), addImportAction) } return true @@ -96,7 +94,7 @@ public class AutoImportFix(element: JetSimpleNameExpression) : JetHintAction { if (!element.isValid()) return listOf()