From 925e4e0a6781cb396eb0fcc06b0f4a938fda62b8 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Thu, 18 Jan 2018 15:23:51 +0300 Subject: [PATCH] KotlinUnusedImportInspection: use LocalQuickFixOnPsiElement --- .../KotlinUnusedImportInspection.kt | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/inspections/KotlinUnusedImportInspection.kt b/idea/src/org/jetbrains/kotlin/idea/inspections/KotlinUnusedImportInspection.kt index 6a407568bf4..f2a574ea43c 100644 --- a/idea/src/org/jetbrains/kotlin/idea/inspections/KotlinUnusedImportInspection.kt +++ b/idea/src/org/jetbrains/kotlin/idea/inspections/KotlinUnusedImportInspection.kt @@ -24,10 +24,7 @@ import com.intellij.codeInsight.daemon.impl.DaemonListeners import com.intellij.codeInsight.daemon.impl.DaemonProgressIndicator import com.intellij.codeInsight.daemon.impl.HighlightingSessionImpl import com.intellij.codeInsight.intention.LowPriorityAction -import com.intellij.codeInspection.InspectionManager -import com.intellij.codeInspection.LocalQuickFix -import com.intellij.codeInspection.ProblemDescriptor -import com.intellij.codeInspection.ProblemHighlightType +import com.intellij.codeInspection.* import com.intellij.lang.annotation.HighlightSeverity import com.intellij.openapi.Disposable import com.intellij.openapi.application.ApplicationManager @@ -39,6 +36,7 @@ import com.intellij.openapi.project.Project import com.intellij.openapi.util.Disposer import com.intellij.openapi.util.TextRange import com.intellij.psi.PsiDocumentManager +import com.intellij.psi.PsiElement import com.intellij.psi.PsiFile import com.intellij.psi.PsiWhiteSpace import com.intellij.psi.util.PsiUtilBase @@ -217,22 +215,22 @@ class KotlinUnusedImportInspection : AbstractKotlinInspection() { } } - private class OptimizeImportsQuickFix(private val file: KtFile) : LocalQuickFix { - override fun getName() = "Optimize imports" + private class OptimizeImportsQuickFix(file: KtFile) : LocalQuickFixOnPsiElement(file) { + override fun getText() = "Optimize imports" override fun getFamilyName() = name - override fun applyFix(project: Project, descriptor: ProblemDescriptor) { + override fun invoke(project: Project, file: PsiFile, startElement: PsiElement, endElement: PsiElement) { OptimizeImportsProcessor(project, file).run() } } - private class EnableOptimizeImportsOnTheFlyFix(private val file: KtFile) : LocalQuickFix, LowPriorityAction { - override fun getName(): String = QuickFixBundle.message("enable.optimize.imports.on.the.fly") + private class EnableOptimizeImportsOnTheFlyFix(file: KtFile) : LocalQuickFixOnPsiElement(file), LowPriorityAction { + override fun getText(): String = QuickFixBundle.message("enable.optimize.imports.on.the.fly") override fun getFamilyName() = name - override fun applyFix(project: Project, descriptor: ProblemDescriptor) { + override fun invoke(project: Project, file: PsiFile, startElement: PsiElement, endElement: PsiElement) { CodeInsightWorkspaceSettings.getInstance(project).optimizeImportsOnTheFly = true OptimizeImportsProcessor( project,